装饰者模式拥有一个设计非常巧妙的结构,它可以动态的添加功能.在基本的设计原则中,有一条重要的设计准则就是合成/聚合复用原则.根据该原则的思想,代码复用应该尽可能使用委托,而不是使用继承.因为继承是一种紧密耦合,父类的任何改动都会影响其子类,不利于系统维护.而委托是松散耦合,只要接口不变,委托类的改变不会影响其上层对象. 装饰者模式就是充分利用这种思想,利用委托,复用系统中的各个组件,在运行时,可以将这些组件进行叠加,构成一个“超级对象”,使其拥有各个组件的功能.而各个子模块的功能,被很好的维护在…