Java进阶笔记(装饰者模式)
来源:互联网 发布:网络直播项目计划书 编辑:程序博客网 时间:2024/05/16 06:37
Java开发模式之装饰者(Decorator)模式
2016/4/27 20:21:02 Seventeen Wen
对象增强的手段:
- 继承
- 装饰者模式
- 动态代理
什么时候使用装饰模式?
- 需要扩展一个类的功能,或者给一个类加附加责任。
- 需要动态地给一个对象增加功能,这些功能可以再动态地撤销。比如给文件加密的操作。
需要增加有一些基本功能的排列组合而产生的非常大量的功能,从而是继承关系变得不现实。
class 配料类{}class 腊肠 extends 配料类{}class 肥牛 extends 配料类{}class 蛋 extends 配料类{}配料 a = new 腊肠();配料 b = new 肥牛(a);// 加腊肠和加肥牛配料 c = new 蛋(b);//加腊肠,加肥牛和加蛋
DBPC中的应用
package com.seventeenwen.decorator // 这个类实现了Connection接口,有Connection的所有方法 public class ConnectionWrapper implements Connection{ // 底层对象,需要被增强的对象 protected Connection con; //通过构造器来传递底层对象 public ConnectionWrapper(Connection con){ this.con = con } public void close() throws SQLException{ con.close(); } ....... ....... } ----------------------------------------------------------------------package com.seventeenwen.decorator public class MyConnection extends ConnectionWrapper{ public MyConnection(Connection con){ super(con); } public void close() throws SQLException{ system.out.print("增强的close()"); super.close(); }} Connection con = dataSource.getConnection(); Connection con1 = new MyConnection(con); //调用普通的Close() con.Close(); //调用增强的Close(); con1.Close();
0 0
- Java进阶笔记(装饰者模式)
- 装饰模式笔记(Java)
- 装饰者模式笔记
- java笔记 装饰设计模式
- 设计模式(Java)-装饰者模式
- Java设计模式(装饰者模式)
- (设计模式)装饰者模式-java
- java设计模式---装饰者模式(简单笔记)
- java 设计模式 学习笔记(5) 装饰模式
- Java设计模式笔记(8)装饰模式
- 设计模式学习笔记---装饰模式decorator(Java版)
- java装饰者模式
- Java装饰者模式
- java装饰者模式
- java装饰者模式
- java装饰者模式
- java装饰者模式
- Java装饰者模式
- 剑指offer—求字符串中第一个只出现一次的字符
- 如何解决java线程中的资源共享的问题
- cut命令的用法
- android view手势冲突的通用解决方法
- hdu 1114 Piggy-Bank(完全背包)
- Java进阶笔记(装饰者模式)
- Quartz.NET c# 教程 - 课程四:Triggers
- HDU 1847 Good Luck in CET-4 Everybody! (巴什博弈)
- 亚信的实习的一到笔试题,交换链表的后半部分
- BZOJ3439 KPM的MC密码
- shell脚本的基础
- 让老百姓能坐上专车,让马路不堵车
- 应用程序安装卸载监听-BroadcastRecevier
- 镜花水月,过不留痕————铭记那些给我们带来进步的C语言小难题