定义:动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活
装饰模式是为已有功能动态地添加更多功能的一种方式。
把每个要装饰的功能放在单独的类中,并让这个类包装它所要装饰的对象,因此,当需要执行特殊行为时,客户代码就可以根据需要有选择地、按顺序地使用装饰功能包装的对象了。
总结下来就是把类中的装饰功能从类中搬移出去,以这样的方法简化原有的类,这样就有效地把类的核心职责与装饰功能区分开了
实现方式是装饰类拥有核心类的引用,只要对这个所有操作都是对这个引用。示例代码
定义:动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活
装饰模式是为已有功能动态地添加更多功能的一种方式。
把每个要装饰的功能放在单独的类中,并让这个类包装它所要装饰的对象,因此,当需要执行特殊行为时,客户代码就可以根据需要有选择地、按顺序地使用装饰功能包装的对象了。
总结下来就是把类中的装饰功能从类中搬移出去,以这样的方法简化原有的类,这样就有效地把类的核心职责与装饰功能区分开了
实现方式是装饰类拥有核心类的引用,只要对这个所有操作都是对这个引用。示例代码