Decorator模式(别名Wrapper):动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案。...
分类:
编程语言 时间:
2014-05-15 05:45:34
阅读次数:
319
装饰模式(Decorater)动态的给一个对象添加一些额外的职责。
就增加功能来说,装饰模式比生成子类更加灵活。装饰模式中有几个关键的地方:①装饰模式依赖于【装饰者】类中有一个父类对象(指针),
而装饰函数(或方法)用来此父类对象(指针)设置实际的动态类型。②因为是要给某个对象增加职责,所以很明显的...
分类:
其他好文 时间:
2014-05-14 12:03:06
阅读次数:
297
原文第8章 装饰模式(Decorator Pattern)概述:
装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。装饰模式的特点:(1)
装饰对象和真实对象有相同的接口。这样客户端对象就可以和真实对象相同的方式和装...
分类:
其他好文 时间:
2014-05-12 09:03:58
阅读次数:
352
装饰模式是在不必改变原类文件和使用继承的情况下,动态地给一个对象添加一些额外的功能。它是通过创建一个包装对象来包裹真实的对象。装饰模式比生成子类更为灵活。
一.角色:
(1)抽象构件(Component)角色:定义一个对象接口,可以给这些对象动态地添加职责。
(2)具体构件(ConcreteComponent)角色:定义了一个具体的对象,也可以给这个对象添加一些职责。
(3)装饰(De...
分类:
其他好文 时间:
2014-05-09 14:13:22
阅读次数:
444
1、策略模式
主体主要是添加一个算法的基类,这样就可以通过创建不同的派生类算法,来达到运行时动态改变行为。
2、观察者模式
观察者 关键是要继承统一的监听接口。
通知者 主要是实现:观察者list、添加观察者、删除观察者、通知观察者等接口。
可分为:推送观察者模式,拉取观察者模式。
3、装饰模式
主要是通过装饰品替换装饰者来改变装饰者的行为。因此,装饰品要与装饰者有相...
分类:
其他好文 时间:
2014-05-09 09:10:18
阅读次数:
264
装饰模式(Decorator),动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活.Component定义一个对象接口,可以给这些对象动态的添加职责。ConcreteComponent是定义了一个具体的对象,也可以给这个对象添加一些职责。Decorator,装饰抽象类,继...
分类:
其他好文 时间:
2014-05-06 13:22:28
阅读次数:
338
IOCP模型与网络编程一。前言:
在老师分配任务(“尝试利用IOCP模型写出服务端和客户端的代码”)给我时,脑子一片空白,并不知道什么是IOCP模型,会不会是像软件设计模式里面的工厂模式,装饰模式之类的那些呢?嘿嘿,不过好像是一个挺好玩的东西,挺好奇是什么东西来的,又是一个新知识啦~于是,开始去寻找...
分类:
其他好文 时间:
2014-05-01 01:34:17
阅读次数:
413
1.简单工厂模式:由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现
2.策略模式:定义一系列的算法,把它们一个个封装起来,并且是他们可以相互替换。使得算法可以独立于使用它的客户而变化。
3.装饰模式:动态的给一个对象添加一些额外的职责,比生成子类更加灵活。
4.代理模式:为其他对象提供一种代理控制对这个对象的访问...
分类:
其他好文 时间:
2014-04-29 13:34:21
阅读次数:
328
刚看了看设计模式,真是费了好多的脑细胞。
想着想着就到了食堂。O(∩_∩)O哈!正是长身体的时候(大神勿喷),
一定要多吃点。于是我打了一份米饭,然后又端着盛米饭的盘子买了一份凉菜
,看着还不是很够,就又端着这个盘子买了一条最爱吃的鱼。
-----装饰模式!
饭 meal=new 饭("晚饭");
米饭rice=new米饭();
菜vegetables= new 菜();
鱼fish = new 鱼();
rice.Decorate(meal);
vegetables.Decorate(rice);...
分类:
其他好文 时间:
2014-04-29 13:13:20
阅读次数:
318