行为型-策略模式
2020-07-14 05:15
148 查看
1.产品增加多个行为时,在父类中添加一个方法,在子类中都要实现一遍,增加了代码量和冗余
a)对行为的封装,也就是使用面向接口编程
b)会形成行为族,实现多个行为接口
c)父类是对行为对象的声明
2.类图
3.实现。
public class GoodFly : IFly { public void fly() { Console.WriteLine("Good Good Fly"); } }
public abstract class Duck { protected IFly fly; protected IQuack quack; public Duck() { } public void Fly() { fly.fly(); } public void Quack() { quack.quack(); } }
public class RedDuck : Duck { public RedDuck() { fly = new GoodFly(); quack = new GaGaQuack(); } }
Duck redDuck = new RedDuck(); redDuck.Fly(); redDuck.Quack(); Console.ReadKey();
相关文章推荐
- 设计模式 ( 十八 ) 策略模式Strategy(对象行为型)
- 设计模式(十三)策略模式(Strategy)-行为型
- 设计模式之行为型模式―― 3.1 策略模式
- 设计模式--行为型--策略模式
- Java设计模式之行为型模式(策略模式)
- 行为型-策略模式
- C#面向对象模式设计第二十三讲:Startegy 策略模式(行为型模式)
- (行为型模式七)策略模式
- 行为型模式-策略(strategy)
- 设计模式(行为型)之策略模式(Strategy Pattern)
- GoF23种设计模式之行为型模式之策略模式
- 设计模式-行为型之策略模式
- Java设计模式_行为型_策略模式_工作还是休息
- 设计模式-策略模式---Strategy(对象行为型)
- JAVA设计模式(16):行为型-策略模式(Strategy)
- 设计模式14:策略模式【行为型】
- 23种设计模式4--行为型模式(策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式)
- 设计模式之行为型策略模式
- 【行为型模式】策略模式(Strategy)之23种java设计模式
- 行为型模式之策略STRATEGY