您所在的位置: 首页>>读书频道>>设计开发>>其它开发>>

认识装饰者模式

http://book.51cto.com  2007-12-04 13:18  [美] 弗里曼(Freeman , E.)等著 蔡学镛 译  中国电力出版社  我要评论(0)
  • 摘要:《Head First 设计模式(中文版)》第三章介绍了Decorator设计模式,可以称为“给爱用继承的人一个全新的设计眼界”。本文是认识装饰者模式。
  • 标签:技巧  装饰  Head First 设计模式

认识装饰者模式

好了, 我们已经了解利用继承无法完全解决问题, 在星巴兹遇到的问题有: 类数量爆炸、设计死板, 以及基类加入的新功能并不适用于所有的子类。

所以, 在这里要采用不一样的做法: 我们要以饮料为主体, 然后在运行时以调料来“ 装饰”(decorate) 饮料。比方说, 如果顾客想要摩卡和奶泡深焙咖啡, 那么, 要做的是: 

拿一个深焙咖啡(DarkRoast)对象
以摩卡(Mocha)对象装饰它
以奶泡(Whip)对象装饰它
调用cost() 方法,并依赖委托(delegate)将调料的价钱加上去。


好了! 但是如何“ 装饰” 一个对象, 而“ 委托” 又要如何与此搭配使用呢? 给一个暗示: 把装饰者对象当成“ 包装者” 。让我们看看这是如何工作的……

【责任编辑:雪花 TEL:(010)68476606】

回书目   上一节   下一节
J2EE实用技巧大全
Windows Server 2003技巧和应用
ADO.NET实用技巧专题
杀毒软件优化和使用技巧
Windows系统使用技巧
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有