1.定义:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
2.适配器模式的类图
3.适配器模式的代码实现
Target代码如下:
public interface Target { public void request(); } |
Adaptee(需要适配的类)代码如下:
public class Adaptee { public void specificRequest(){ System.out.println("Adaptee...specificRequest"); } } |
Adapter代码如下:
public class Adapter implements Target { private Adapteeadaptee =new Adaptee(); /** * 通过重写,表面上调用request()方法,变成了实际调用specificRequest() */ @Override public void request() { adaptee.specificRequest(); } } |
客户端代码如下:
public class Client { public static void main(String[] args) { Target target = new Adapter(); target.request(); } } |
执行结果:Adaptee...specificRequest
4.何时使用适配器模式
要使用一个已经存在的类,但它的接口和你的要求不同时,考虑使用适配器模式。