设计模式学习笔记——Decorator装饰模式
2017-02-04 19:20
232 查看
装饰模式的作用或动机就是,尽量避免继承,而使用关联。原因是层层继承下来,内容会越来越多,有失控的危险。就扩展性而言,用关联比用继承好。所谓的关联,A使用了B,就叫A关联了B。
Component 抽象构件
ConcreteComponent 具体构件
Decorator 抽象装饰类
从图可知,Decorator聚合(强关联)了Component,Component与Decorator有相同的方法operation(),Decorator本身是调用Component来实现自己这个operation(依赖注入)。
在具体使用过程中,我们是面向Decorator 这个接口来编程;如果要扩展,则是扩展ConcreteComponent的operation()。接口没变,则我们的应用程序也不用做什么修改。
Component 抽象构件
ConcreteComponent 具体构件
Decorator 抽象装饰类
从图可知,Decorator聚合(强关联)了Component,Component与Decorator有相同的方法operation(),Decorator本身是调用Component来实现自己这个operation(依赖注入)。
在具体使用过程中,我们是面向Decorator 这个接口来编程;如果要扩展,则是扩展ConcreteComponent的operation()。接口没变,则我们的应用程序也不用做什么修改。
相关文章推荐
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记--Decorator装饰模式
- 设计模式学习笔记(一)——Decorator装饰模式
- 设计模式学习笔记——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- [设计模式学习笔记]DECORATOR装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(六)—Decorator装饰模式
- 设计模式学习笔记(十)——Decorator装饰模式
- 设计模式学习笔记(一)——面向对象设计模式与原则
- [设计模式学习笔记之一]面向对象是什么?
- [设计模式学习笔记之一]面向对象是什么?
- 设计模式学习笔记(二)——Singleton单件模式
- 设计模式学习笔记(一)