Posted on 2006-09-07 23:58
冰浪 阅读(341)
评论(0) 编辑 收藏 所属分类:
设计模式
Adapter(适配器)——换个包装再利用
对一个既有类再度进行包装,即用子类继承既有类。此子类改写(即包装)即有类中的方法,使得既有类能重用以适应即有的某一抽象接口(API)。从而使得既有类可以以统一的(单一)接口进行方法调用,实现类的统一抽象。
Adapter Pattern 可以把曾使用过的类包装成需要的类,这样可以节省建立必要方法的时间。在程序出现bug时,可以确定既有类没有bug,此时只需要检查Adapter类即可,减轻程序检查的负担。
Adapter类不需要知道既有类的内部实现细节,只要知道其方法原型,就能建立其他新类。
可以实现版本更新与兼容性。假设现在完成版本更新后,就只着重在新版本而不想再维护旧版本的部分。此时,把新版本视为Adapter参与者,旧版本则为Target参与者,接下来只要建立一个担任Adapter参与者的类,让它利用新版本的类来实现旧版本的方法即可。