适配器定义
适配器使得原本由于接口不兼容而不能一起工作、不能统一管理的那些类可以一起工作、可以进行统一管理。
解决接口不兼容而不能一起工作问题,看下面一个非常经典的案例。
示例
在中国,⺠用电都是220v交流电,但是手机锂电池用的都是5v直流电。
因此,我们给手机充电时就需要使用电源适配器来进行转换。使用代码还原这个生活场景 。
创建AC220类,表示220v交流电:
package com.lagou.edu;
import com.sun.org.apache.bcel.internal.generic.RETURN;
public class AC220 {
public int outputAC220V() {
int output = 220;
System.out.println("输出交流电" + output + "V");
return output;
}
}
创建DC5接口,表示5V直流电:
package com.lagou.edu;
public interface DC5 {
int outputDC5V();
}
创建电源适配器类 PowerAdapter:
package com.lagou.edu;
public class PowerAdapter implements DC5 {
private AC220 ac220;
public PowerAdapter(AC220 ac220) {
this.ac220 = ac220;
}
public int outputDC5V() {
int adapterInput = ac220.outputAC220V();
// 变压器...
int adapterOutput = adapterInput/44;
System.out.println("使用 PowerAdapter 输入AC:" + adapterInput
+ "V输出DC:" + adapterOutput + "V");
return adapterOutput;
}
}
客户端测试代码:
package com.lagou.edu;
public class AdapterTest {
public static void main(String[] args) {
DC5 dc5 = new PowerAdapter(new AC220());
dc5.outputDC5V();
}
}
在上面的案例中,通过增加电源适配器类PowerAdapter实现了二者的兼容。
文章内容输出来源:拉勾教育Java高薪训练营