您的位置:首页 > 其它

策略模式

2016-04-06 18:10 190 查看
策略模式定义了算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。

链接处有相关代码。

代码的解释:

设计一个Duck(鸭子)类。因为鸭子有呱呱叫和飞行两种方法,但是并飞所有的鸭子都有这两个功能(如橡皮鸭)。所以将鸭子的飞行和呱呱叫放在分开的类中,此类专门提供某行为接口的实现。(接口分别是FlyBehavior和QuackBehavior)。

FlyWithWings类、FlyNoWay类、FlyRocketPowered类分别实现了FlyBehavior类

Squack类、 Quack类、 MuteQuack类分别实现了FlyBehavior类

MiniDuckSimulator是一个测试类

点击打开链接

文章内容来自:Head First
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: