JAVA--装饰模式(Decorator)--设计模式七


1,概述:

            (1)装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和
被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例
 
JAVA--装饰模式(Decorator)--设计模式七_第1张图片

  (2)代码:
 Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加
一些功能,如下:

JAVA--装饰模式(Decorator)--设计模式七_第2张图片

JAVA--装饰模式(Decorator)--设计模式七_第3张图片

(3)总结:
     装饰模式的应用场景:
        ①需要扩展一个类的功能
        ②动态的为一个对象增加功能,而且还能动态撤销(继承做不到这一点,
继承的功能都是静态的,不能动态删减)
        ③缺点:产生太多相似的对象,不易排错




你可能感兴趣的:(java,Decorator,装饰模式Decorator,设计模式七)