大话设计模式

《大话设计模式》

第212章

上一页 封面 下一页

小A:“装饰器模式与适配器模式有什么区别?”

大B:“装饰器模式与适配器模式都叫做包装模式(Warpper),但装饰器与被装饰具有相同的接口(具体表现为都实现想同的JavaInterface或装饰器是被装饰类的子类等)。但适配器与被适配的类具有不同的接口(虽然可能用部分重合的API)如BufferedReader是一个Decorator因为它接受一个Reader对象,但是InputStreamReader它接受一个InputStream对象,把InputStream的API转换成Reader的API。半装饰器(退化了的装饰器)如果一个Decorator除了提供被装饰类的接口外还提供了另外的方法,就变成了一个半透明的装饰器,客户如果要使用这个特殊的方法说要使用具体的装饰器类,这样就违背了装饰器模式的使用初衷,但实际应用往往无法避免。”

阅读大话设计模式最新章节 请关注米妮小说网(www.qixinyuan.com.cn)

上一页 目录 下一页 存书签

热门推荐