Java中的适配器模式

作者: CodingDGSun | 来源:发表于2021-12-30 11:43 被阅读0次

适配器模式简介

  • 适配器模式是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
  • 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。

类模式

要被适配的类TV和类Wire
//要被适配的类:电视
public class TV {
    //电视剧需要一个电源适配器,就可以供电,开机
    public void open(IPowerAdapter iPowerAdapter) {
        //打开电视,需要电,需要连接电线,需要一个电源适配器
        iPowerAdapter.power();
    }
}

//要被适配接入的类:电线
public class Wire {
    public void supply() {
        System.out.println("供上电了...");
    }
}
电源适配器接口IPowerAdapter
//电源适配器接口
public interface IPowerAdapter {
    //供电
    void power();
}
电线和电视机适配器类TVPowerAdapter(通过继承方式)
//真正的适配器,一端连接电线,一端连接电视
public class TVPowerAdapter extends Wire implements IPowerAdapter {
    @Override
    public void power() {
        super.supply();//有电了
    }
}
测试类
public class Test {
    public static void main(String[] args) {
        TV tv = new TV();//电视
        TVPowerAdapter tvPowerAdapter = new TVPowerAdapter();//电源适配器
        Wire wire = new Wire();//电线

        tv.open(tvPowerAdapter);

        /**
         * 输出结果:
         * 供上电了...
         */
    }
}
测试结果
供上电了...

组合模式(推荐使用)

要被适配的类TV和类Wire
//要被适配的类:电视
public class TV {
    //电视剧需要一个电源适配器,就可以供电,开机
    public void open(IPowerAdapter iPowerAdapter) {
        //打开电视,需要电,需要连接电线,需要一个电源适配器
        iPowerAdapter.power();
    }
}

//要被适配接入的类:电线
public class Wire {
    public void supply() {
        System.out.println("供上电了...");
    }
}
电源适配器接口IPowerAdapter
//电源适配器接口
public interface IPowerAdapter {
    //供电
    void power();
}
电线和电视机适配器类TVPowerAdapter(通过组合方式)
//真正的适配器,一端连接电线,一端连接电视
public class TVPowerAdapter implements IPowerAdapter {
    private Wire wire;

    public TVPowerAdapter(Wire wire) {
        this.wire = wire;
    }

    @Override
    public void power() {
        wire.supply();//有电了
    }
}
测试类
public class Test {
    public static void main(String[] args) {
        TV tv = new TV();//电视
        Wire wire = new Wire();//电线
        TVPowerAdapter tvPowerAdapter = new TVPowerAdapter(wire);//电源适配器

        tv.open(tvPowerAdapter);

        /**
         * 输出结果:
         * 供上电了...
         */
    }
}
测试结果
供上电了...

相关文章

  • 优雅的实现接口转换——Java 适配器模式详解

    项目4说的是适配器,Peter老师也总结一下Java中的适配器模式。 适配器模式(Adapter Pattern)...

  • 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策略模式java代理模式java观察者模式java适配器模式...

  • Java中的适配器模式

    1.概述 在本快速教程中,我们将了解Adapter模式及其Java实现。 2.适配器模式 适配器模式充当两个不兼容...

网友评论

    本文标题:Java中的适配器模式

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