Strategy Patern 策略模式

    Strategy 模式的意图:

定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使算法可独立于使用它的客户而变化。


说得太抽象了。下面来看下例子(2007 软件设计师考试——上):

 

鸭子种类

发声特征

飞行特征

外观特征

灰鸭(MallardDuck)

发出"嘎嘎"(Quack)

用翅膀飞行(Fly With wings)

灰色羽毛

红头鸭(RedHeadDuck)

发出"嘎嘎"(Quack)

用翅膀飞行(Fly With wings)

灰色羽毛

棉花鸭(CottonDuck)

不发声(QuackNoWay)

不能飞行(FlyNoWay)

白色

橡皮鸭(RubberDuck)

发出橡皮与空气摩擦声(Squeak)

不能飞行(FlyNoWay)

黑白橡皮颜色

 

 

你可能感兴趣的:(设计模式,算法)