设计模式之--装饰者模式
2013-01-12 21:06
344 查看
装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更具有弹性的替代方案。
类图:
装饰者和被装饰者必须是一样的类型,也就是有共同的超类。
java/IO用到了装饰者模式。缺点:利用装饰者模式,常常造成设计中有大量的小类,数量实在太多,可能会造成使用此API程序员的困扰。
装饰者模式可以和工厂模式配合,更好地解决问题。
举例时考虑咖啡的例子,各种配料就是装饰者。
OO原则:
对扩展开放,对修改关闭。
类图:
装饰者和被装饰者必须是一样的类型,也就是有共同的超类。
java/IO用到了装饰者模式。缺点:利用装饰者模式,常常造成设计中有大量的小类,数量实在太多,可能会造成使用此API程序员的困扰。
装饰者模式可以和工厂模式配合,更好地解决问题。
举例时考虑咖啡的例子,各种配料就是装饰者。
OO原则:
对扩展开放,对修改关闭。
相关文章推荐
- java设计模式-装饰者模式
- 设计模式之装饰者模式
- 设计模式之装饰者模式
- 设计模式的学习(三)—— 装饰者模式
- 设计模式——装饰者模式
- Java设计模式-装饰者模式(Decorator)
- 《Head First 设计模式》装饰者模式
- Java设计模式——装饰者模式
- 设计模式-装饰者模式
- Java 的设计模式之一装饰者模式
- 设计模式之代理模式and装饰者模式
- 设计模式:装饰者
- Javascript设计模式之装饰者模式详解篇
- 设计模式读书笔记----装饰者模式
- 设计模式 - 装饰者模式(Decorator)
- 设计模式——装饰者模式
- 设计模式学习(三)、装饰者模式
- 设计模式C++实现——装饰者模式
- 设计模式——装饰者模式
- 设计模式之——装饰者模式