装饰者模式定义
- 装饰者模式: 动态的将新功能
附加到对象上
。在对象功能扩展方面,它比继承更有弹性,装饰者模式也体现了开闭原则(ocp)。 - 这里提到的
动态的新功能附加到对象
和ocp原则
,在后面的应用实例上会以代码的形式体现,请同学们注意体会。
装饰者模式(Decorator)原理
- 装饰者模式就像
打包一个快递
主体: 比如: 陶瓷、衣服(Component)
包装: 比如: 报纸填充、塑料泡沫、纸板、木板(Decorator) - Component
主题: 比如类似前面的Drink - ConcreteComponent和Decorator
ConcreteComponent: 具体的主题,比如前面的各个单品咖啡
Decorator: 装饰者,比如各调料 - 在如图
Component与ConcreteComponent之间
,如果ConcreteComponent类很多,还可以设计一个缓冲层,将共有的部分提取出来,抽象层一个类。
网友评论