装饰者模式 动态地将责任附加到对象上。若要扩展功能,装饰者能够提供比继承更加具有弹性的设计。 装饰者可以在被装饰者的行为前面或者后面加上自己的行为,甚至可以将被装饰者的整个行为替换掉,而达到特定的目的。