设计模式——装饰着模式

栏目: 后端 · 发布时间: 6年前

内容简介:我们的目标是使类容易扩展,在不改变现有代码的情况下,就可以搭配新的行为以星巴此咖啡为例。比如,客户想要摩卡和奶泡深赔咖啡。那么,要做的是:

定义

动态地将责任附加到对象上,若要扩展功能,装饰着提供了比继承更有弹性的替代方案。

OO原则

  • 封装变化
  • 多用组合少用继承
  • 针对接口编程,不针对实现编程
  • 为了交互对象之间的松耦合而努力
  • 类应该对扩展开放,对修改关闭

开闭原则

我们的目标是使类容易扩展,在不改变现有代码的情况下,就可以搭配新的行为

认识装饰者模式

以星巴此咖啡为例。比如,客户想要摩卡和奶泡深赔咖啡。那么,要做的是:

  1. 那一个深赔咖啡(DarkRoast)对象
  2. 以摩卡(Mocha)对象装饰它
  3. 以奶泡(Whip)对象装饰它
  4. 调用cost()方法,并依赖委托将调料的价格加上去

设计模式——装饰着模式

  • 装饰者和被装饰者对象有相同的超类型
  • 你可以用一个或多个装饰者包装一个对象
  • 既然装饰者和被装饰对象有相同的超类型,所以在任何需要原始对象(被包装的)的场合,可以用装饰过的对象替代它
  • 装饰者可以在所委托被装饰者的行为之前与或之后,加上自己的行为,以达到特定的目的
  • 对象可以在任何时候被装饰,所以可以在运行时动态地、不限量地用你喜欢的装饰者来装饰对象

类图

设计模式——装饰着模式


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

21天学通C语言

21天学通C语言

(美国)琼斯(Bradley L.Jones) (美国)埃特肯(Peter Aitken) / 信达工作室 / 人民邮电出版社 / 2012-8 / 69.00元

《21天学通C语言(第6版•修订版)》是初学者学习C语言的经典教程。本版按最新的标准(ISO∕IEC:9899-1999),以循序渐进的方式介绍了C语言编程方面知识,并提供了丰富的实例和大量的练习。通过学习实例,并将所学的知识用于完成练习,读者将逐步了解、熟悉并精通C语言。《21天学通C语言(第6版•修订版)》包括四周的课程。第一周的课程介绍了C语言程序的基本元素,包括变量、常量、语句、表达式、函......一起来看看 《21天学通C语言》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具