摘要: 在HeadFirst中这样定义,装饰模式:动态的将责任添加到对象上。想要扩展功能,可以使用装饰方式替代继承。这个可以避免继承实现的时候,对象爆炸式增长。关键就是对象可以在运行时刻被装饰,不限量的使用你喜欢的装饰者来装饰对象。这里讲述到了一个设计原则:对扩展开放,对修改关闭(关闭原则)其实实现的原理很简单,就是设计一个公用接口,所有的装饰类全部直接继承这个公用的接口,然后这些装饰类就可以互相包含。如果增加新功能,只需要创建一个新的对象,然后包含源对象即可。而且所有的对象运行什么函数,都是到运行时刻,才决定的。也就用户可以增加新的功能,对已经实现的功能屏蔽修改:一个装饰模式的举例(c++ 实现): 阅读全文
posted @ 2011-07-26 15:50 李广志 阅读(112) 评论(0) 推荐(0) 编辑