设计模式之适配器模式

/**

适配器模式:将一个类的接口转换成客户希望的另外一个接口。

适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作

*/

interface PowerA {
    void insert();
}

class PowerAImpl implements PowerA {

    @Override
    public void insert() {
        System.out.println("电源A开始工作");
    }
}

interface PowerB {
    void connect();
}

class PowerBImpl implements PowerB {

    @Override
    public void connect() {
        System.out.println("电源B开始工作");
    }
}

class AdapterMode implements PowerA { //适配器
    private PowerB powerB;

    public AdapterMode(PowerB powerB) {
        this.powerB = powerB;
    }

    @Override
    public void insert() {
        powerB.connect();
    }
}
 
public class Adapter {
    public static void main(String[] args) {
        PowerAImpl powerA = new PowerAImpl();
        work(powerA);

        PowerBImpl powerB = new PowerBImpl();
        AdapterMode adapterMode = new AdapterMode(powerB);
        work(adapterMode);
    }

    public static void work(PowerA a) {
        System.out.println("正在连接......");
        a.insert();
        System.out.println("工作结束");
    }
}
 

 

posted @ 2022-06-01 11:45  曹伟666  阅读(34)  评论(0)    收藏  举报