结构型模式-装饰器模式
结构型模式:
装饰器模式(Decorator)
解决类功能扩展问题
描述
通过在不改变原有对象结构的基础上,动态地为对象添加新的功能或者修改现有功能,从而增强对象的功能和可定制性。这种方式可以对系统进行灵活的功能扩展,同时也符合“开闭原则”。
适用环境
在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责;当不能采用继承的方式对系统进行扩展或者采用继承不利于系统的扩展和维护时使用。
优点:
装饰器提供了比继承更加灵活的替代方案;可以通过装饰器来组合不同的行为。
缺点:
会产生大量的小对象&