适配器模式

五. 适配器模式
整理自 《java与模式》阎宏编著


1.意图:

    把一个类的接口转换成客户端所期望的另一种接口。

2.类图:
    类适配器
    适配器模式

    对象适配器
    适配器模式
  

3.原理:
      保留现有的类所提供的服务,修改其接口,从而达到客户端的期望。

4.特征:
  目标(Target)角色:所期望得到的接口。

    适配源(Adaptee):现在的需要适配的接口。

    适配器(Adapter):将适配源接口适配成目标接口。



    类适配器使用继承关系复用适配源(Adaptee),因此目标(Target)不能是类,只是能接口(java单继承)。

    对象适配器使用委派关系复用适配源(Adaptee),因此目标(Target)可能是类或接口,可以将多个适配源适配到一个目标接口。

5.说明:   

6.使用案例:

7.代码:

// Adaptee.java 适配源

public class Adaptee

{

     /**

      * Some adaptee-specific behavior

      */

     public void anotherRequest()

     {

         /* put your specific code here */

     }

}

// Target.java 目标接口

public interface Target

{

     /**

      * This method is called by client when he needs some domain-specific stuff

      */

     public abstract void sampleRequest();

}



//类适配方式

// Adapter.java 适配器

public class Adapter extends Adaptee implements Target

{

     /**

      * Implementation of target method that uses adaptee to perform task

      */

     public void sampleRequest()

     {

         anotherRequest();

     }

}



//对象适配方式

// Adapter.java 适配器

public class Adapter implements Target

{

     /**

      * Implementation of target method that uses adaptee to perform task

      */

   private Adaptee adaptee;

     public void sampleRequest()

     {

         adaptee .anotherRequest();

     }

}

你可能感兴趣的:(java,设计模式)