装饰模式,动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。
当系统需要新功能的时候,是向旧的类中添加新的代码。这些新加的代码通常装饰了原有类的核心职责或主要行为,概括来说就是在实现了原有的功能之后再添加额外的功能。
所以把旧对象作为传入参数装配到新对象里,先调用旧对象的方法,之后再添加新功能,如此为系统添加新功能。
优势在于有效地把类的核心职责和装饰功能区分开来,可以随意装配装饰功能。
装饰模式,动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。
当系统需要新功能的时候,是向旧的类中添加新的代码。这些新加的代码通常装饰了原有类的核心职责或主要行为,概括来说就是在实现了原有的功能之后再添加额外的功能。
所以把旧对象作为传入参数装配到新对象里,先调用旧对象的方法,之后再添加新功能,如此为系统添加新功能。
优势在于有效地把类的核心职责和装饰功能区分开来,可以随意装配装饰功能。