java23种设计模式--装饰模式(decorator)
来源:互联网 发布:单身约会软件app 编辑:程序博客网 时间:2024/06/05 05:55
装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下:
Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下:
测试类:
输出:
before decorator!
the original method!
after decorator!
装饰器模式的应用场景:
1、需要扩展一个类的功能。
2、动态的为一个对象增加功能,而且还能动态撤销。(继承不能做到这一点,继承的功能是静态的,不能动态增删。)
缺点:产生过多相似的对象,不易排错!
如有转载,请说明出处:http://blog.csdn.net/zhangerqing
0 0
- java23种设计模式--装饰模式(decorator)
- java23种常用设计模式之装饰模式(Decorator)
- java23种设计模式之装饰模式(Decorator)
- 设计模式 - 装饰 Decorator
- Decorator(装饰)设计模式
- 设计模式-装饰模式(Decorator Pattern)
- 设计模式---装饰模式(decorator)
- 设计模式 (十)装饰模式(Decorator)
- 设计模式 (十)装饰模式(Decorator)
- 设计模式 (十)装饰模式(Decorator)
- 【设计模式】之装饰模式(Decorator)
- 设计模式之装饰模式(Decorator)
- 设计模式之 装饰模式(Decorator)
- 设计模式之装饰模式(Decorator)
- Java设计模式---装饰模式(Decorator)
- 设计模式(五):装饰模式(Decorator)
- 设计模式(7)--Decorator 装饰模式
- 设计模式:装饰模式(Decorator)
- 字符设备驱动
- linux版本 Centos下安装tar包/rpm包
- VS2008项目中相关目录的说明
- RT_Thread最新开发板RealBoard—LPC4088的介绍及编译环境的搭建和下载
- 树莓派(rasperberry pi 2)上装mysql远程无法访问
- java23种设计模式--装饰模式(decorator)
- Windows 7-64位安装PLSQL-Developer
- java compiler level does not match the version of the installed java project facet
- ajax的data传参的两种方式
- Java事件处理 P120 例6-2(按钮事件处理程序)
- 插入排序、折半、希尔、堆
- Android中pendingIntent的深入理解
- Android 小白学习之路(2)
- GStreamer基础教程04——时间管理