装饰模式(Decorator Pattern)
项目中有时由于需求变化,我们经常不得不通过继承扩展原有类。但如果频繁扩展,就造成继承深度过深,有时还会违背单一职责原则(SRP)。这时装饰模式就派上用场的。


图1 Decorator模式结构图
图中的抽象类Decorator继承且包含Component,拥有基本功能,后面具体实例化的类(如:ConcreteDecoratorA)就可以扩展Component功能,开始“装饰”了。
.NET中例子


图1 Decorator模式结构图
图中的抽象类Decorator继承且包含Component,拥有基本功能,后面具体实例化的类(如:ConcreteDecoratorA)就可以扩展Component功能,开始“装饰”了。
.NET中例子
