首页 > 其他 > 详细

适配器模式

时间:2018-07-19 14:24:31      阅读:179      评论:0      收藏:0      [点我收藏+]

  适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。

  类的适配器模式把适配的类的API转换成为目标类的API。

  ●  目标(Target)角色:这就是所期待得到的接口。 sampleOperator1()

  ●  源(Adapee)角色:现在需要适配的接口。          sampleOperator2()

  ●  适配器(Adaper)角色:适配器类是本模式的核心。适配器把源接口转换成目标接口。显然,这一角色不可以是接口,而必须是具体类。 sampleOperator1() sampleOperator2()  适配器包含二个目的的交集

  此时有2种方式来创建:

       ① 我们使用继承+实现   适配器继承Adapee实现Target,那么适配器属于Adapee类且可以实现目标所期待的方法

       ② 我们使用在适配器中增加 Adapee对象类传递

Target接口

public interface Target {
    /*
    此时Target接口需要传入Adaptee的sampleOperator2()方法  需要把sampleOperator2()转化为sampleOperator1()
     */

    //这是Adaptee有的方法
    public void sampleOperator1();
    //这是Adaptee没有的方法
    public void sampleOperator2();

}

Adapee类

public class Adaptee {
    public void sampleOperator1(){
        System.out.println("this is Adaptee sampleOperator1 method..");
    }
}

① :

public class Adapter extends Adaptee implements Target {
    @Override
    public void sampleOperator2() {
    }
}

② :   

public class Adapter1 {

    private Adaptee adaptee;

    public Adapter1(Adaptee adaptee){
        this.adaptee=adaptee;
    }

    public Adaptee getAdaptee() {
        return adaptee;
    }

    public void setAdaptee(Adaptee adaptee) {
        this.adaptee = adaptee;
    }

    public void sampleOperator2(){
        System.out.println("this is sampleOperator2 method..");
    }
}

 

适配器模式

原文:https://www.cnblogs.com/bockpecehhe/p/9334488.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!