一、装饰者模式简介
- 在HeadFirst 介绍装饰者模式的导论中,这么介绍装饰者模式给爱用继承的人一个全新的设计眼界
- 那么更通俗讲,什么是装饰者模式呢?装饰者,包装原有的对象,使之变成具有包装着功能的新事物。
- 举个栗子,你去一家面馆吃面,这是一家专门做面食的餐馆,有面条,汤料,狮子头,烤肠,豆皮,酱料包……,然后顾客来吃面的时候,首先准备一碗面条,然后根据顾客的需求,爱吃炸酱的,带汤的,加卤蛋,豆皮等等……(可以说是以这些辅料来装饰面条得到你需要的)
二、装饰者模式定义
- 动态地将职责附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的代替方案
- 如图是装饰者模式类图说明

- 我们来看一下面馆里面的例子

- 装饰者模式demo就不列出来了。依据如上的逻辑,代码实现应该很简单,若有不对的地方,欢迎批评指正!
装饰者模式详解
本文介绍了装饰者模式的概念及其应用场景,并通过一家面馆的例子形象地解释了装饰者模式是如何动态地给对象添加职责,以及它相较于继承的优势。
833

被折叠的 条评论
为什么被折叠?



