装饰模式(Decorator)又叫装饰者模式,在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。,就增加功能来说,装饰模式比生成子类更加灵活。
下面上代码让大家更好的了解:
首先是Component类,它定义了一个对象接口,可以给这些对象动态的添加职责
using System;
namespace DecoratorPackage
{
abstract class Component
{
public abstract void Operation();
}
}
然后是ConcreteComponent类,它定义了一个具体的对象,也可以给这个对象添加一些职责。