适配器模式
将一类接口转换成另一个类接口,使得原本具有相关性但不兼容的两个接口,可以可以在一起工作。
举例
生活中常见的适配器就是手机充电器了
家里的220v电源插座可以视作一个接口,同时usb数据线也可视作一个接口,这两个接口具有相关性,但他们不兼容,因为usb数据线需要一个5v的输入,但插座是220v的,因此我们就需要创建一个中间件即适配器,来将电源转换成5v的。
创建一个220v电源
public class HomeBattery {
public int supply () {
return 220;
}
}
创建一个usb数据线
public class USBLine {
public void charge(int volt) {
if (volt == 5) {
System.out.println("正在充电");
} else {
throw new IllegalArgumentException("不合理参数");
}
}
}
创建一个适配器
public class Adapter {
public int convert(int vlot) {
int adapterVlot = vlot - 215;
return adaptrVlot;
}
}
调用
public class User {
private void chargeForPhone() {
HomeBattery homeBattery = new HomeBattery();
int homeVlot = homeBattery.supply();
Adapter adapter = new Adapter();
int lowVolt = adapter.convert(homeVlot);
USBLine usbLine = new USBLine();
usbLine.charge(lowVlot);
}
}