设计模式(三)装饰模式

概念:

动态的给 一个对象 添加一些额外的职责。

使用场景

当系统需要新增功能的时候,通常的方法是向类中添加新代码,这些新加的代码通常装饰了原有类的核心职责,从而产生新的逻辑,这样就增加了主类的复杂度,而且又违反了 开关原则,这些新加入的东西紧紧为了满足一些只在某种特定情况下才会执行的特殊行为的需要,这个时候可以采用装饰模式。

分析

  • 经常喜欢吃板面,板面的 种类 有很多种类;
  • 我们知道板面在煮出来就是 一碗板面,根据客户的需求 加入 鸡蛋、丸子、豆皮等组合方式,便形成了菜谱上的鸡蛋板面,丸子板面,豆皮板面等等...
  • 以上 一碗板面 就是原有功能( 一个对象),而根据需求 加入 ,也就是动态添加额外的职责;

设计

decorator.png

decorator
decorator

代码

实际代码实例

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容