装饰模式(Decorator)使用原来被装饰的类的一个子类的实例,把客户端的调用委派到被装饰的类。装饰模式的关键在于这种扩展是透明的。
装饰模式(Decorator)的角色:
- 抽象构件(Component)角色:给出一个抽象接口,以规范准备接受附加责任的对象。
- 具体构件(Concrete Component)角色:定义一个附加责任类。
- 装饰(Decorator)角色:持有一个构件对象的实例。并定义一个与抽象构件一样的的接口
- 具体装饰(Concrete Decorator)角色:负责给构件对象贴上附加责任。
在什么情况使用装饰模式?
- 需要扩展一个类的功能,或给一个类增加附加责任。
- 需要动态给一个对象增加功能,这些功能也可以动态地撤销。
- 需要增加一些基本功能的排列组合而产生的非常大的量的功能,从而使继承关系变不的不现实。
代码:
public interface Component
{
void sampleOperation();
}
public class ConcreteComponent implements Component
{
public void sampleOperation()
{
// Write your code here
}
}
public class Decorator implements Component
{
public Decorator(Component component)
{
// super();
this.component = component;
}
public Decorator() {
}
public void sampleOperation()
{
component.sampleOperation();
}
/**
* @link aggregation
*/
private Component component;
}
public class ConcreteDecorator extends Decorator
{
public void sampleOperation()
{
super.sampleOperation();
}
}
分享到:
相关推荐
设计模式C++学习之装饰模式(Decorator)
动态地给一个对象添加一些额外的职责。就扩展功能而言,它比生成子类方式更为灵活。
C#设计模式之Decorator 装饰模式,pdf+视频教学,实例演示,易学易用~~
学习java 装饰模式(decorator)非常好的例子
5、装饰模式(Decorator) 用意:动态地给一个对象增加其它职责,比继承实现灵活。
装饰器(Decorator)模式 详细教程,简明易懂,非常清晰的,附带有代码示例。
装饰者模式(Decorator Pattern)是一种结构型设计模式,它的定义是在不改变原有对象结构的基础上,动态地给该对象增加一些职责(即增加其额外功能)。这种模式允许向一个现有的对象添加新的功能,同时又不改变其...
C#面向对象设计模式 Decorator 装饰模式 视频讲座下载
在这里与各位分享本人从网络上下载的C#面向对象设计模式纵横谈系列视频,共有25节,除了第一节需要各位贡献一点资源分以作为对本人上传资源的回馈,后面的其他资源均不需要... 这是第10节:结构型模式Decorator装饰模式
Head First 设计模式 (三) 装饰者模式(decorator pattern) C++实现 VS2012 下通过
装饰模式.doc 装饰模式.doc 装饰模式.doc
NULL 博文链接:https://xiangtui.iteye.com/blog/1033790
NULL 博文链接:https://chuanwang66.iteye.com/blog/1325151
主要介绍了Java设计模式之装饰模式(Decorator模式)介绍,本文讲解了为什么使用Decorator、如何使用装饰模式、Jive中的Decorator实现等内容,需要的朋友可以参考下
C#面向对象设计模式纵横谈(10):Decorator 装饰模式(结构型模式) (Level 300)
C#面向对象设计模式纵横谈(10):Decorator 装饰模式(结构型模式)
NULL 博文链接:https://jacky-dai.iteye.com/blog/1132229
demo python使用装饰器(Decorator)的方式实现单例模式 functools.wraps 则可以将原函数对象的指定属性复制给包装函数对象, 默认有 __module__、__name__、__doc__,或者通过参数选择
主要为大家详细介绍了.net设计模式之装饰模式Decorator,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Head First学习笔记+Head First之装饰者模式高清PDF