设计模式目录:设计模式 1 ——观察者模式设计模式 2 —— 装饰者模式设计模式 3 —— 迭代器和组合模式概要
分类:
其他好文 时间:
2014-07-30 20:41:14
阅读次数:
155
装饰者模式Decorator模式(别名Wrapper):动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的取代方案。意图:动态地给一个对象加入?一些额外的职责。就添加?功能来说,Decorator模式相比生成子类更为灵活。设计原则:1. 多用组合,少用继承。利用继承设计子类的行为,是...
分类:
其他好文 时间:
2014-07-28 14:46:43
阅读次数:
246
我们都知道,可以使用两种方式给一个类或者对象添加行为。
一是使用继承。继承是给一个类添加行为的比较有效的途径。通过使用继承,可以使得子类在拥有自身方法的同时,还可以拥有父类的方法。但是使用继承是静态的,在编译的时候就已经决定了子类的行为,我们不便于控制增加行为的方式和时机。
二是使用关联。组合即将一个对象嵌入到另一个对象中,由另一个对象来决定是否引用该对...
分类:
编程语言 时间:
2014-07-28 00:23:49
阅读次数:
236
设计模式目录:设计模式 1 ——观察者模式设计模式 2 —— 装饰者模式
分类:
其他好文 时间:
2014-07-27 09:40:42
阅读次数:
194
装饰者模式的作用 装饰者模式可以复用系统中的各个单一功能组件,在运行时,可以将这些组件进行叠加,构造一个‘超级对象’,使得具有这些组件的功能。 装饰者模式的应用 举个用户下单的业务场景。 原有业务:用户下单,系统涉及到调用第三方接口,即下单接口。因此,当用户下单时,系统只需调用第三方接口来...
分类:
其他好文 时间:
2014-07-24 21:55:43
阅读次数:
220
装饰者模式:动态地给一个对象添加一些额外的职责,就增加功能来说,Decorator模式比生成子类更为灵活。 Decorator模式的工作原理是:可以创建始于Decorator对象(负责新的功能的对象)终于原对象的一个对象“链”。适用性在以下情况下可以使用 Decorator 模式:在不影响其他对象....
分类:
其他好文 时间:
2014-07-22 22:58:12
阅读次数:
241
动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。具体被装饰者和抽象装饰类都继承于抽象被装饰者类,继承的是类型,而不是行为。行为来自装饰者和基础组件,或与其他装饰者之间的组合关系。装饰者通常是...
分类:
其他好文 时间:
2014-07-22 00:35:34
阅读次数:
211
生命周期中关键3个类:
BundleActivator
入口点,类似main方法
BundleContext
Bundle上下文对象,在运行期间,为应用程序提供操作osgi框架的方法
Bundle
代表一个已安装的Bundle
接口说明:
BundleAc...
分类:
其他好文 时间:
2014-07-18 23:13:29
阅读次数:
388
装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。具体被装饰者和抽象装饰类都继承于抽象被装饰者类,继承的是类型,而不是行为。行为来自装饰者和基础组件,或与其他装饰者之间的组合关系。装饰模式的角色 抽象构件角色(Component):给出一个抽象接口,以规范准备....
分类:
编程语言 时间:
2014-06-28 18:21:50
阅读次数:
340
装饰者模式是动态的将责任附加到另一个对象上,由这个对象负责;这个装饰与被装饰的组件接口一致,因此对使用该组件的客户透明;其中的关键点是装饰者可以在所委托被装饰者的行为之前和之后,加上自己的行为,已达到特点的目的。
代码如下:
-------------Component
//装饰者模式一般使用抽象类
public abstract class Beverage
{...
分类:
其他好文 时间:
2014-06-27 09:09:56
阅读次数:
269