1.白话文定义
通过继承或依赖已有的对象,使得原本不兼容的接口实现一起使用的目的。
2.角色
(类适配器/对象适配器)
1.待适配的类:需要进行适配的类;
2.目标接口类:用户期待的接口,目标可以是具体的类或抽象的类,也可以是接口;
3.适配器类:通过继承/实现提供适配接口。
3.类图
4.代码实现
1.待适配器类
public class Adaptee {
public void usbCharge() {
System.out.println("usb 插槽充电");
}
}
2.目标接口类
public interface Target {
/**
* @desc typeC充电
*/
void typecCharge();
}
3.适配器类
public class Adapter extends Adaptee implements Target {
private Adaptee adaptee;
public Adapter(Adaptee adaptee) {
this.adaptee = adaptee;
}
@Override
public void typecCharge() {
adaptee.usbCharge();
System.out.println("typec 插槽充电");
}
}
4.调用者类
public class Mobile {
public void charge(Target target) {
target.typecCharge();
}
}
public class Main {
public static void main(String[] args) {
Mobile mobile = new Mobile();
Adaptee adaptee = new Adaptee();
//通过适配器,兼容usb充电插槽
mobile.charge(new Adapter(adaptee));
}
}