定义
动态的给对象添加一些额外的职责,就增加功能来说,装饰器模式比生成子类更为灵活。
结构与说明
Component : 组件对象的接口
ConcreteComponent : 具体的组件对象
Decorator : 所有装饰器的父类
ConcreteDecorator : 具体的装饰器
实现
个人比较喜欢奶茶组合计费的例子(见书<<大话设计模式>>),这里还是看java的I/O机制,InputStream对象,有装饰器类FilterInputStream、BufferedInputStream、LineNumberInputStream实现。
No Final is final
By Xu.j.h