Objective-C设计模式

设计模式-装饰模式《十六》

2019-01-04  本文已影响22人  liyoucheng2014

何为装饰模式

定义:动态的给一个对象添加一些额外的职责。就扩展功能来说,装饰模式相比生成子类更为灵活

静态关系图如下

装饰模式的类图

何时使用装饰模式

1、想要在不影响其他对象情况下,以动态、透明的方式给单个对象添加职责。
2、想要扩展一个类的行为,却做不到。类定义可能被隐藏,无法进行子类化;或者,对类的每个行为的扩展,为支持每种功能组合,将产生大量的子类
3、对类的职责的扩展是可选的

注:系统Category是基于装饰器模式
注意:Category可能重写了被装饰父类的方法

实现装饰模式的各种图像滤镜的类图

Objective-C项目地址

上一篇下一篇

猜你喜欢

热点阅读