美文网首页
java设计模式 - 适配器模式

java设计模式 - 适配器模式

作者: CXY_XZL | 来源:发表于2021-04-26 10:53 被阅读0次

1.简介

在我们的应用程序中我们可能需要将两个不同接口的类来进行通信,在不修改这两个的前提下我们可能会需要某个中间件来完成这个衔接的过程。这个中间件就是适配器。

所谓适配器模式就是将一个类的接口,转换成客户期望的另一个接口。它可以让原本两个不兼容的接口能够无缝完成对接。
适配器分为类适配器对象适配器


2.类适配器代码

//目标接口
interface Target{
    public void request();
}
//适配者接口
class Adaptee{
    public void specificRequest(){       
        System.out.println("适配者中的业务代码被调用!");
    }
}
//类适配器类
class ClassAdapter extends Adaptee implements Target{
    public void request(){
        specificRequest();
    }
}
//客户端代码
public class ClassAdapterTest{
    public static void main(String[] args){
        System.out.println("类适配器模式测试:");
        Target target = new ClassAdapter();
        target.request();
    }
}

执行结果如下:

类适配器模式测试:
适配者中的业务代码被调用!

3.对象适配器代码

//目标接口
interface Target{
    public void request();
}
//适配者接口
class Adaptee{
    public void specificRequest(){       
        System.out.println("适配者中的业务代码被调用!");
    }
}
//对象适配器类
class ObjectAdapter implements Target{
    private Adaptee adaptee;
    public ObjectAdapter(Adaptee adaptee){
        this.adaptee=adaptee;
    }
    public void request(){
        adaptee.specificRequest();
    }
}
//客户端代码
public class ObjectAdapterTest{
    public static void main(String[] args){
        System.out.println("对象适配器模式测试:");
        Adaptee adaptee = new Adaptee();
        Target target = new ObjectAdapter(adaptee);
        target.request();
    }
}

执行结果如下:

对象适配器模式测试:
适配者中的业务代码被调用!

4.使用场景

需要有一个接口,一个具体实现类,一个适配器
接口:这个接口最好是只有一个方法,避免适配器实现它时重写多个不必要的方法,如果实际项目中没有这样的接口,那我们就自己写一个
具体实现类:这是被调用方法的一方


5.参考

适配器模式(Adapter模式)详解
JAVA设计模式总结之23种设计模式


6.致谢

感谢自己记录下了适配器模式,面试要考!

相关文章

  • 浅析Java设计模式【1】——观察者

    前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【3】—...

  • 浅析Java设计模式【2】——适配器

    前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【3】—...

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java外观模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java适配器模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java观察者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java代理模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java策略模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • 浅析Java设计模式【3】——代理

    1. 前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【...

网友评论

      本文标题:java设计模式 - 适配器模式

      本文链接:https://www.haomeiwen.com/subject/isisrltx.html