美文网首页Objective-C设计模式
设计模式-装饰模式《十六》

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

作者: liyoucheng2014 | 来源:发表于2019-01-04 21:15 被阅读22次

    何为装饰模式

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

    静态关系图如下

    装饰模式的类图

    何时使用装饰模式

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

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

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

    Objective-C项目地址

    相关文章

      网友评论

        本文标题:设计模式-装饰模式《十六》

        本文链接:https://www.haomeiwen.com/subject/psrcrqtx.html