天天看点

设计模式 - 装饰者模式(Decorator Pattern) 具体解释

本文地址: http://blog.csdn.net/caroline_wendy/article/details/26707033

装饰者模式(Decorator Pattern):动态地将责任附加到对象上. 若要扩展功能, 装饰者提供了比继承更有弹性的替代方案.

用法:

1. 首先创建组件(Component)父类, 全部类,详细组件(Concrete Component)和装饰者(Decorator)都属于这一类型, 能够进行扩展;

能够是抽象类(abstract class), 也能够是接口(interface);

代码:

2. 装饰者(Decorator)类父类, 继承组件(component)父类, 可是不要实现接口函数, 由它的继承类(详细的装饰者)去实现,

能够是抽象类(abstract class), 也能够是

接口(interface);

3. 详细组件(Concrete Component), 即装饰者(Decorator)须要装饰的基础, 继承组件(Component)父类;

4. 装饰者(Decorator)类继承装饰者父类, 实现组件父类的接口和装饰者父类的接口.

5. 測试, 创建详细组件(Concrete Component), 再一层一层加入装饰者(Decorator)类, 能够实现动态的组合;

6. 输出:

面向对象的原则:

对扩展开发, 对改动关闭.

设计模式 - 装饰者模式(Decorator Pattern) 具体解释