设计模式: 策略模式

设有一基类Duck, 因为要添加新功能所以可能要修改基类, 其中可能遇到的问题有:

1. 代码在子类中重复.

2. 很难知道所有子类的全部行为.

3. 改变会牵一发而动全身, 造成其他子类不必要的改变.

解决方法为:

1. 找出应用中可能要变化之处, 把它们独立出来

2. 将可能变化的行为设计为接口, 而不是在类中实现它们

3. 多使用类似接口的组合而不是继承


示例:



posted @ 2014-09-16 02:01  wu_overflow  阅读(115)  评论(0编辑  收藏  举报