装饰器模式
2017-03-21 14:16
176 查看
#装饰器模式 #@理解:为一个事物在自身的基础上进行添加功能、属性等操作。 #利用构造函数的特点,获取原事物的属性,再增添自己的属性。 #避免深度继承带来的麻烦,同时可以更加随意的进行添加装饰 #扩展: #使用场景:比如发表评论,把需要的评论都汇集在一起 #原事物 class BaseConent { public function action() { echo "我就是我"; } } #a类装饰 class a_Add extends BaseConent { public function __construct($bc) { $bc->action(); } public function action() { echo "我有不一样的烟花"; } } #b类装饰 class b_Add extends BaseConent { public function __construct($bc) { $bc->action(); } public function action() { echo "都是扯淡"; } } ///////////////////////////////////////////////////// #可以任意装饰 (new b_Add(new BaseConent()))->action(); echo "</br>"; (new b_Add (new a_Add((new BaseConent()))))->action();
相关文章推荐
- 设计模式之装饰器
- 设计模式之--装饰器模式的硬编码的静态装饰和链化
- 装饰器模式
- 《PHP设计模式介绍》第十二章 装饰器模式
- 装饰器模式和代理模式的区别
- 装饰器(Decorator)模式
- 装饰器模式
- 装饰器模式
- 装饰器(Decorator)模式
- 结构型模式——Decorator 装饰器(理论篇)
- 装饰器(Decorator)模式
- 装饰器模式
- Head First 设计模式——装饰器(Decorator Pattern)——Python实现
- Python中的Decorator(装饰器)模式
- 结构型模式——装饰器模式 示例代码
- 装饰器(Decorator)模式
- 装饰器(Decorator)模式【转】
- 装饰器模式
- C#设计模式之10——装饰器模式
- 装饰器模式