设计原则: 类应该对扩张开发,对修改关闭。
定义: 动态的将责任附加到对象上。
若要扩展功能,装饰者提供了比继承更有弹性的替代方案。
别名: Wrapper
注意点:装饰者在所委托被装饰者的行为之前或之后,加上自己的行为,以达到特定的目的。
类图:
例子: starbuzz中咖啡和饮料的使用。
缺点: 可能会造成很多小类。
设计原则: 类应该对扩张开发,对修改关闭。
定义: 动态的将责任附加到对象上。
若要扩展功能,装饰者提供了比继承更有弹性的替代方案。
别名: Wrapper
注意点:装饰者在所委托被装饰者的行为之前或之后,加上自己的行为,以达到特定的目的。
类图:
例子: starbuzz中咖啡和饮料的使用。
缺点: 可能会造成很多小类。