java设计模式(十):适配器模式(对象适配器)

需求如下

思路如下

代码如下

Client
package Adapter2;

public class Client {
    public static void main(String[] args) {
        Phone phone = new Phone();
        phone.charging(new VoltageAdapter(new Valtage220V()));
    }
}
Phone
package Adapter2;

public class Phone {
    public void charging(Valtage5V valtage5V){
        if (valtage5V.OutPut5V()==5){
            System.out.println("电压为5v可以充电");
        }else {
            System.out.println("不可以充电");
        }
    }
}
Valtage5V
package Adapter2;

public interface Valtage5V {
    int OutPut5V();
}
Valtage220V
package Adapter2;

public class Valtage220V {
    public int OutPut(){
        int src = 220;
        System.out.println("电压为220v");
        return src;
    }
}
VoltageAdapter
package Adapter2;

public class VoltageAdapter implements Valtage5V {
    private Valtage220V valtage220V;
    VoltageAdapter(Valtage220V valtage220V){
       this.valtage220V = valtage220V;

    }

    @Override
    public int OutPut5V() {
        int voltage = valtage220V.OutPut()/44;
        return voltage;
    }
}

优缺点

猜你喜欢

转载自blog.csdn.net/qq_39046786/article/details/113747672