Java之适配器模式(Adapter Pattern)

1.概念:将一个接口转换成客户希望的另外一个接口。(该模式使得原本不兼容的类可以一起工作)

2.UML图

(1)对象的Adapter模式结构图

(2)类的Adapter模式结构图

 

3.代码

(1)对象适配器

public interface Target 
{
   public void Request();
}

public class Adaptee 
{
    public void SpecificRequest()
    {
        System.out.println("这是原始标准接口!");
    }
}

public class Adapter implements Target 
{
    private Adaptee adapteet=null;
    
    public void Request() 
    {
        adapteet.SpecificRequest();
    } 
}

(2)类适配器

public interface Target 
{
   public void Request();
}

public class Adaptee 
{
    public void SpecificRequest()
    {
        System.out.println("这是原始标准接口!");
    }
}

public class Adapter extends Adaptee implements Target 
{
    public void Request() 
    {
        super.SpecificRequest();
    }

}

4.应用场景

在以下各种情况下使用适配器模式:

1.系统需要使用现有的类,而此类的接口不符合系统的需要。

2.想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。这些源类不一定有很复杂的接口。

3.(对对象适配器而言)在设计里,需要改变多个已有子类的接口,如果使用类的适配器模式,就要针对每一个子类做一个适配器,而这不太实际。

 --------------------------------------------------------------------

PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。

--------------------------------------------------------------------

posted on 2011-12-22 22:55  Devin Zhang  阅读(4525)  评论(1编辑  收藏  举报