适配器模式的定义
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
使用场景
以下情况使用Adapter模式
- 你想使用一个已经存在的类,而它的接口不符合你的需求。
- 你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。
- (仅适用于对象Adapter)你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配它们的接口。对象适配器可以适配它的父类接口。
结构
适配器模式分为类适配器和对象适配器两种
类适配器
类适配器模式的结构如下
对象适配器
对象适配器模式的结构如下
Target
– 定义Client使用的与特定领域相关的接口。Client
– 与符合Target接口的对象交互。Adaptee
– 定义一个已经存在需要适配的接口。Adapter
– 将Adaptee的接口适配转换成Target目标接口
协作
Client在Adapter实例上调用一些操作。接着适配器调用Adaptee的操作实现这个请求。