不动原类,添加修改功能的方法:
(1)继承
(2)委托
一般不推荐继承(破坏封装性,不安全),但是如果用委托存在大量简单委托,用继承;如果只是添加功能,不需要用太多原来方法,用委托。
装饰模式,继承(或实现)与委托都有, 继承(此时父类是抽象类)用来规范所有的行为,委托用来指定被包装的的类。
不动原类,添加修改功能的方法:
(1)继承
(2)委托
一般不推荐继承(破坏封装性,不安全),但是如果用委托存在大量简单委托,用继承;如果只是添加功能,不需要用太多原来方法,用委托。
装饰模式,继承(或实现)与委托都有, 继承(此时父类是抽象类)用来规范所有的行为,委托用来指定被包装的的类。