24种设计模式学习笔记之装饰者模式

装饰模式(Decorator)

  是指在不改变原对象的基础之上,将功能附加到对象上,提供了比继承更灵活性的替代方案(扩展原有对象的功能),装饰者模式属于结构型模式。

 应用场景

1、用于扩展一个类的功能或给一个类添加附加职责。
2、动态的给一个对象添加功能,这些功能可以再动态的撤销。

测试代码

优点:
  • 装饰者比继承灵活,可以在不改变原有对象的情况下动态地给一个对象扩展功能,即插即用非常方便
  • 通过不同的装饰器组合,可是实现不同效果
  • 装饰者完全遵守开闭原则。
缺点:
  • 会增加程序复杂性,会增加更多的类
  • 动态装饰时,操作多层装饰复杂

猜你喜欢

转载自www.cnblogs.com/xiaoyangxiaoen/p/12361897.html
今日推荐