组合模式 将对象组合为"部分-整体"的层次结构,组合模式使得用户对单个对象和组合对象的使用统一的接口 关键在于抽象类的定义,为leaf 和composite提供了统一的接口 装饰者模式 可以将装饰者支持组合模式需要的一些功能 享元模式 当组合模式中出现大量相似的组件对象并且状态可以从组件对象分离 迭 ...
分类:
其他好文 时间:
2017-11-09 11:38:08
阅读次数:
155
装饰者模式Decorator 通过组合的方式动态的为对象透明的增加功能, 本质是上功能的动态组合 XE10版本的装饰都有两个抽象类,并有相互继承的管理,实现类与实现的分离 目的是为了动态的增加功能 改变对象的外观 也可以认为是动态的算法骨架,但也只是模拟而已,两者的设计目的和原本的功能及本质的思想都 ...
分类:
其他好文 时间:
2017-11-09 11:23:45
阅读次数:
150
装饰者模式是为已有功能动态地添加更多功能的一种方式,当系统需要新功能的时候,是向旧的类中添加新的代码。这些新加的代码通常装饰了原有类的核心职责或主要行为。但这种做法的问题在于,它们在主类中加入了新的字段,新的方法和新的逻辑,从而增加了主类的复杂度,而这些新加入的东西仅仅是为了满足一些只在某种特定情况 ...
分类:
其他好文 时间:
2017-11-06 15:31:24
阅读次数:
174
设计模式之装饰着模式 装饰者模式其实就是为了增强类,增强类的要素 a.增强类必须实现被增强类的接口 b.增强类中必须含有被增强类的应用 创建一个手机接口(Phone) 创建手机的实现类(HuaWeiPhone) 创建增强手机的实现类(在打电话之前需要响铃) 测试方法: 在打完电话后想听音乐 测试方法 ...
分类:
其他好文 时间:
2017-11-04 22:25:41
阅读次数:
228
结构型模式 装饰模式 适用于: 装饰者模式(Decorator Pattern)动态的给一个对象添加一些额外的职责。就增加功能来说,此模式比生成子类更为灵活。 ...
分类:
其他好文 时间:
2017-11-03 14:17:40
阅读次数:
161
定义一个自己的连接池 获取链接对象 跟释放连接对象 用装饰者模式写一个connectionwrap类实现接口connection 对需要加强的方法进行加强eg 对close()方法进行了加强使得此connection对象的close()不是销毁链接对象而是归还连接对象,不需要加强的方法电泳原来的方法 ...
分类:
其他好文 时间:
2017-11-02 16:06:13
阅读次数:
134
转载自:http://www.cnblogs.com/jaredlam/archive/2011/11/08/2241089.html 学习AOP时,教材上面都说使用的是动态代理,可是在印象中代理模式一直都是控制访问什么的,怎么又动态增加行为了,动态增加行为不是装饰器模式吗?于是 找了很多资料,想弄 ...
分类:
其他好文 时间:
2017-10-29 22:01:23
阅读次数:
166
装饰者模式 1.概述: 动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加的灵活。 2.原理: 增加一个修饰的类来包裹原来的类,包裹的方式一般是通过将原来的对象作为修饰类的构造函数的参数。装饰类实现新的功能,但是,不需要用到新功能的地方,它可以直接调用原来的类中的方法,修饰类 ...
代码转自 http://blog.csdn.net/wuzhekai1985 装饰者模式:动态地给一个对象添加一些额外的职责,就增加功能来说,为实物已有的功能添加额外的新功能,组合成整体。有时我们希望给某个对象而不是整个类添加一些功能。 即DecotatorPhoneA::Show()函数在有Sho ...
分类:
编程语言 时间:
2017-10-25 18:08:13
阅读次数:
201
装饰对象,增强功能。 why? 如果需要对该对象的某些功能做一些增加,但又不想再去重新实现已有的功能,因为这样会有重复的代码出现。 how? 重新写一个类,实现被装饰类类的所有方法,然后将装饰对象作为构造器的参数传入,并为装饰类成员变量赋值, 这样就可以调用被装饰类的方法。 ...
分类:
其他好文 时间:
2017-10-21 18:59:56
阅读次数:
155