摘要: 利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态扩展。从而把新的方法,甚至是设计超类时还没有想到的方法加在对象上,同时又不修改原来的代码。原则:类应该对扩展开放,对修改关闭。如果顾客需要Mocha和奶泡深焙咖啡:1.取一个深焙咖啡(DarkRoast)对象 2.以摩卡对象装饰它 3.以奶泡装饰它 4.... 阅读全文
posted @ 2010-05-04 01:18 莫忆往西 阅读(137) 评论(0) 推荐(0) 编辑