*.类适配器模式和对象适配器模式最大的区别在于:对象适配器模式中适配器和适配者之间是关联关系,而类适配器模式中适配器和适配者是继承关系
一、对象设配器模式
关键点:适配器需要继承目标类,这样才符合里氏代换原则。
关键代码:
class Adapter extend Target{//集成Target。Target t = new Adapter();即可获得适配器
private Adaptee adaptee;//引入适配者
public void request(){
adaptee.method();//调用适配者的功能。
}
}
二、类设配器模式
关键点:当目标类不是抽象的接口时,在java中不太适合使用类设配器。
关键代码:
class Adapter extend Adaptee implements Target{
public void request(){
method();
}
}
自己实际开发的例子:
EMT项目中overWeightSeivice就是使用了适配器模式,客户端发送请求到controler,controler虽然可以直接访问Dubbo封装的后台接口服务,但是如果直接访问代码复用率将极大的降低,所以在把Dubbo封装的接口服务再次封装到overWeightSeivice并通过spring IOC为controler提供服务,这样每一次调用后台接口服务都可以复用overWeightSeivice的代码了。