设计模式入门

设计原则:找出应用中可能需要变化之处,把他们独立出来,不要和哪些不需要变化的代码混在一起。尽量使用面向接口编程而不是针对具体实现类编程。

在鸭子类的设计过程中,因为鸭子种类的变化,fly()和quack()会有不同,因此我们需要将这两个属性提取出来,新建一组新类来代表每个行为。每一种行为可以抽象为一个接口,然后创建一组类实现接口,通过不同的实现来表达不同的属性。之所以不采用鸭子类直接实现行为接口,是因为接口并未提供实现,无法达到代码复用的目的。这里采用组合的方式,使每个鸭子的子类都继承了成员变量从而继承相应的属性,从而实现代码复用。同时这样也更加灵活的控制鸭子的属性,通过提供一个方法,就可以改变鸭子的不同属性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值