装饰器模式
来源:互联网 发布:拍网络电影怎么赚钱 编辑:程序博客网 时间:2024/05/16 17:41
1.装饰器模式的定义
动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式比生成子类更为灵活
2.装饰器模式的UML图
Component:组件对象的接口,可以给这些对象动态的添加职责
ConcreteComponent:具体的组件对象,实现组件对象接口,通常就是被装饰器装饰的原始对象,也就是可以给这个对象添加职责
Decorator:所有装饰器的抽象父类,需要定义一个与组件接口一致的接口,并持有一个Component对象,其实就是持有一个被装饰的对象
3.代码实现
public abstract class Component{public void operation();}public class ConcreteComponent extends Component{ public void operation(){ }}public abstract class Decorator extends Component{protected Component component;public Decorator(Component component){ this.component=component;}public void operation(){ this.component.operation();}}public class ConcreteDecoratorA extends Decorator{ private String addedState; public String getAddedState(){ return this.addedState; } public void setAddedState(String addedState){ this.addedState=addedState; } public ConcreteDecoratorA(Component component){ this.component=component;}public void operation(){ this.component=compnent;}}public class ConcreteDecoratorB extends Decorator{ private String addedState; public String getAddedState(){ return this.addedState; } public void setAddedState(String addedState){ this.addedState=addedState; } public ConcreteDecoratorB(Component component){ this.component=component;}public void operation(){ this.component=compnent;}}public class Client{public static void main(String[] args){ Component component=new ConreteComponent();Decorator decorator=new ConcreteDecoratorA(component);decorator.operation();}}
4.装饰模式的本质:动态组合
- c++装饰器模式
- 装饰器模式
- 装饰器模式
- 装饰器(Decorator)模式
- 装饰器模式
- 装饰器模式
- 装饰器模式
- 装饰器模式
- 装饰器模式
- 装饰器模式
- 装饰器(Decorator)模式
- 浅谈装饰器模式
- java 装饰器模式
- 装饰器(Decorator)模式
- 装饰器模式
- 装饰器(Decorator)模式
- 装饰器模式
- 装饰器模式
- apache(单机)负载均衡配置(一)
- JavaScript Namespace
- Eclipse+Tomcat远程调试配置
- MyEclipse7.0 手动安装插件
- ASP.NET Master Page中的title
- 装饰器模式
- hoj 1372 方程的解数
- ICEfaces抄袭PrimeFaces
- H264基本概念 -- 图像、帧、片、NALU
- linux多线程创建时使用类成员函数作为参数
- styleCop使用介绍
- android 手点击处画圆 然后淡出
- Spring AOP入门实例详解
- Apach directory configure