今天就来写一下装饰者模式,该软考了,也该实习了,感觉心态静不下来,设计模式都是一些简单的小例子,但是看了这么久连简单的了解还没有完全搞定,深感惭愧,还是要安静下来,书中才有颜如玉~ ~ ~不扯了,下边进入正题
一、装饰者模式定义
在不修改原类的基础上,动态地扩展原来的对象的功能,装饰者提供了比继承更有弹性的替代方案:通过创建一个包装对象(装饰对象),来包裹真实的对象
二、装饰者模式的特...
分类:
其他好文 时间:
2015-05-05 00:03:45
阅读次数:
224
声明:本系列博客参考资料《大话设计模式》,作者程杰。
装饰器模式又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。
UML类图:
角色:
组件对象的接口:可以给这些对象动态的添加职责
...
分类:
Web程序 时间:
2015-05-03 13:24:23
阅读次数:
169
装饰模式可以在不改变一个对象本身功能的基础上给对象增加额外的新行为。装饰模式是一种用于替代继承的技术,它通过一种无须定义子类的方式来给对象动态增加职责,使用对象之间的关联关系取代类之间的继承关系。在装饰模式中引入了装饰类,在装饰类中既可以调用待装饰的原有类的方法,还可以增加新的方法,以扩充原有类的功能。...
分类:
其他好文 时间:
2015-04-30 18:13:45
阅读次数:
133
装饰模式:动态地给一个对象添加一些额外的职责,就增加功能而言,装饰者模式比生成子类更加灵活。Component是定义一个对象接口,可以给这些对象动态地添加职责,ConcreteComppnent是定义了一个具体的对象,也可以给这个对象添加一些职责,Decorator,装饰抽象类,继承了Component,从外类来扩展Component类的功能,但对于Component来说,是无需知道Decorat...
分类:
其他好文 时间:
2015-04-30 14:17:05
阅读次数:
124
先上uml图:
意图:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。
uml解析:装饰者模式又名包装器,顾名思义就是给某个对象添加一些功能,而不是给整个类添加一些功能。Component跟Decorator是聚合关系,子类ConcreteDecoratorA和ConcreteDecoratorB实现具体对Component的修饰。
下面给出...
分类:
其他好文 时间:
2015-04-29 11:49:52
阅读次数:
122
咖啡店订单系统类设计一:初始方案class Bervage{ description; getDescription(); cost();};每种不同的饮料都是Bervage的一个派生类,由于调料多种多样,导致派生类“爆炸”二 改进class Bervage{ description; m...
分类:
其他好文 时间:
2015-04-28 22:37:50
阅读次数:
164
转:http://www.jellythink.com/archives/171#prettyPhoto什么是装饰模式?在GOF的《设计模式:可复用面向对象软件的基础》一书中对装饰模式是这样说的:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。装饰模式...
分类:
其他好文 时间:
2015-04-22 18:00:31
阅读次数:
98
上次简单说了一下什么是装饰者模式以及装饰者模式的一些特点,这次接着说装饰者模式的应用。 一、主要参与的类或者接口 1.component:修饰者和被修饰者共同继承的类,定义了装饰者和被装饰者需要实现的方法,可以单独的使用,也可以被修饰者包裹起来使用。 2.concreteCompon...
分类:
编程语言 时间:
2015-04-21 17:21:56
阅读次数:
163
以前没有接触过装饰者模式,昨天简单研究了一下,记录一下,为以后进一步学习铺垫一下,刚刚接触,有不对的地方欢迎大家指正。 首先,什么是装饰者模式? 先举个例子来说,就像是一条生产蛋糕的流水线,你不能用这条流水线去生产汽车,更不能去生产坦克吧,当然你也生产不了。你的蛋糕生产出来了,要保存吧,要销...
分类:
编程语言 时间:
2015-04-21 12:47:51
阅读次数:
189
装饰者模式: 在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。该模式的组成部分: 一个共同的抽象类(父类,也可以是接口) 具体的被装饰者类(可以是多个) 一个抽象的装饰者类 和 多个具体的装饰者类注: 不需要 额外的...
分类:
其他好文 时间:
2015-04-19 10:10:47
阅读次数:
116