2.4 结构型-装饰者模式

应用场景:动态的给一个对象增加额外的职责,装饰者模式比子类继承更为灵活。

组成要素:

Component:抽象构件

ConcreteComponent:具体构件,被装饰的对象

Decorator:装饰者,实现Component,并且里面一定包含要被装饰的构建Component

ConcreteDecorator:具体装饰者,对呗装饰对象进行自定义的装饰

示例demo:现在要做三种蛋糕,第一种蛋糕是只涂抹一层奶油,第二种蛋糕是再涂抹一层巧克力,第三种蛋糕是再加一层水果。


抽象构建
具体构建,被装饰对象
抽象装饰者,规定被装饰类型,以及装饰逻辑
具体装饰者,在被装饰基础上实现自己的装饰逻辑
具体装饰者,在被装饰者基础上进行自定义的装饰
具体装饰者,在被装饰者基础上进行自定义的装饰
客户端,进行层层装饰
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容