1、Client.java
public class client {
public static void main(String[] args) {
System.out.println("===类适配器===");
Phone phone = new Phone();
phone.charging(new VoltageAdapter());
}
}
2、Phone.java
public class Phone {
// 充电
public void charging(Voltage5V voltage5V){
if(voltage5V.Output5V() == 5){
System.out.println("电压为5V,可以充电");
}else if(voltage5V.Output5V() > 5){
System.out.println("电压大5V,不能充电~~");
}
}
}
3、Voltage5V.java
// 被适配的接口
public interface Voltage5V {
public int Output5V();
}
4、VoltageAdapter.java
public class VoltageAdapter extends Voltage220V implements Voltage5V{
@Override
public int Output5V() {
// 获取到220V电压
int srcV = output220V();
int dstV = srcV /44; // 转为5V
return dstV;
}
}
5、Voltage220V.java
// 被适配的类
public class Voltage220V {
// 输出220V电压
public int output220V() {
int src = 220;
System.out.println("电压 = " + src + "伏");
return src;
}
}