2019年1月7日
摘要: 优点: ① 可以提供比继承更多的灵活性,原有代码无须变动,只是在原对象上装饰一层“外衣”。 ② 可以动态扩展一个对象的功能,在运行时选择不同的装饰器,从而实现不同的行为。 缺点: ① 会产生很多的小对象,增加了系统的复杂性 ② 比继承更加灵活,同时意味着比继承更易出错,排错也困难,对于多次装饰的对象 阅读全文
posted @ 2019-01-07 16:34 书生游 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 优点: ① 都实现了Component接口,都具备了Add和Remove方法,使用户对单个对象(叶子)和组合对象(枝干)的调用没有区别。 ② 扩展节点非常容易,便于后期扩展维护。 缺点: 使得设计更加复杂,客户端需要花更多时间理清类之间的层次关系。 适用范围: 只要是树形结构,只要是要体现局部和整体 阅读全文
posted @ 2019-01-07 10:33 书生游 阅读(183) 评论(0) 推荐(0) 编辑