适配器模式例子

一、概念

将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。

二、设计角色

目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
需要适配的类(Adaptee):需要适配的类或适配者类。
适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。

三、UML类图

适配器模式例子_第1张图片

例子:

/*
 * 目标类
 */
public class Target {
    public void sayWho(){
        System.out.println("this is common object!");
    }
}

/*
 * 需要适配的类
 */
public class Adaptee {

    public void specSayWho(){
        System.out.println("this is special object!");
    }
}

/*
 * 适配器
 */
public class Adapter extends Target{

    Adaptee adp = new Adaptee();

    @Override
    public void sayWho() {
        adp.specSayWho();
    }
}

/*
 * 客户端
 */
public class App {
    public static void main(String[] args) {
        Target adp = new Adapter();
        adp.sayWho();
    }
}

原文地址:http://www.cnblogs.com/wangjq/archive/2012/07/09/2582485.html

你可能感兴趣的:(UML建模/设计模式)