首页 > 代码库 > 适配器模式

适配器模式

    适配器模式(Adapter Pattern)就是对一个类做适配,使之符合客户端的需求,能够正常的工作。

    就像是变压器(Adapter),美国的生活电压是110V,中国的是220V,美国的电器要在中国使用就需要加上一个变压器(Adapter)。

    适配器模式也被称为包装模式(Wrapper Pattern),将已有的类进行包装,使之具有需求所需的接口。

    适配器模式有以下两种:类的适配器模式和对象的适配器模式。

    

    类的适配器模式的类图关系如下:

    

       Target:目标角色,包含所有期望拥有的接口

       Adaptee:现有的类,需做适配

       Adapter:适配Adaptee符合Target      

public interface Target {       void sampleOperation1();    void sampleOperation2();}

  

public class Adaptee {    public void sampleOperation1(){}}

  

public class Adapter extends Adaptee implements Target {       public void sampleOperation2(){        // Write your code here    }}

  对象的适配器模式的类图关系如下:

 

    对象的适配器模式与类的适配器模式的区别在于: Adapter与Adaptee的关系不是继承,而是关联。 Adapter直接调用Adaptee。

public class Adapter implements Target {    public Adapter(Adaptee adaptee){        super();        this.adaptee = adaptee;    }    public void sampleOperation1(){        adaptee.sampleOperation1();    }    public void sampleOperation2(){        // Write your code here    }    private Adaptee adaptee;}