【设计模式一】Decorator模式
来源:互联网 发布:淘宝上的点痣笔有用吗 编辑:程序博客网 时间:2024/04/30 14:03
定义(From <<HeadFirst>>):
1.The Decorator Pattern attaches additional responsibilities to an object dynamically.
2.Decorators provide a flexible alternative to subclassing for extending functionality.
1.动态地给一个对象添加一些额外的职责。
2.就增加功能来说,Decorator模式相比生成子类更为灵活。
使用场景(From GOF):
1. 在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。
2. 处理那些可以撤消的职责。
3. 当不能采用生成子类的方法进行扩充时。
(一种情况是,可能有大量独立的扩展,为支持每一种组合将产生大量的子类,使得子类数目呈爆炸性增长。另一种情况可能是因为类定义被隐藏,或类定义不能用于生成子类。)
优点:
1. 可以提供比继承更多的灵活性。
2. 通过使用不同的具体装饰类以及这些装饰类的排列组合,设计师可以创造出很多不同行为的组合。
缺点:
1. 会产生比使用继承关系更多的对象,会使得查错变得困难。
现实中的Decorator:
1.JAVA.IO库的实现
2.极品飞车实例
- 【设计模式一】Decorator模式
- 设计模式 - Decorator模式
- 设计模式-decorator模式
- 设计模式-Decorator模式
- 设计模式 - Decorator模式
- 设计模式--Decorator 模式
- java Decorator设计模式 Decorator设计模式
- SharpDevelop设计模式(Decorator)
- 设计模式之Decorator
- Decorator设计模式 C#
- Decorator设计模式 Java
- 设计模式--Decorator
- 设计模式之 Decorator
- 设计模式(Decorator)
- 设计模式之Decorator
- 设计模式之Decorator
- 设计模式之Decorator
- 设计模式之 decorator
- 《the TRUMAN show》 观后感:不寒而栗
- Update整个数据库所有表某字段的值
- 新浪十年路 新浪的触角 新浪成年
- 如何判断操作系统所在磁盘
- 2008奢华品牌网上表现TOP100 2008奢华品牌网上表现分类排行榜—蓝调 2008奢华品牌网上表现分类排行榜—红调
- 【设计模式一】Decorator模式
- 设计模式之六——组合模式
- JNDI(Java 命名和目录接口)(一)
- 过年了,妈妈放假了,可以好多天陪我玩了
- 项目管理的8忌讳与8技巧
- DateTimePicker
- JNDI(Java 命名和目录接口)(二)--JDBC2.0扩展API
- JNDI(Java 命名和目录接口)(三)---- Tomcat中配置和使用JNDI
- 有关浮动的效果