适配器模式有俩中:类适配器模式,对象适配器模式
类适配器模式:通过继承的方式实现适配器模式
对象适配器模式:通过对象组合实现适配器模式
用USB和PS2的转接为示例,以代码形式说明俩中适配器模式
类适配器:
public interface Usb {
void usb();
}
public interface Ps2 {
void ps2();
}
public class UsbImpl implements Usb {
public void usb() {
System.out.println("USB接口");
}
}
public class Ps2Adapter extends UsbImpl implements Ps2 {
public void ps2() {
usb();
}
}
public class AdapterDemo {
@Test
public void testAdapter(){
Ps2 ps2 = new Ps2Adapter();
ps2.ps2();
}
}
对象适配器模式:
只修改demo和Adapter其他和上面的一样
public class Ps2Adapter implements Ps2 {
private Usb usb;
public Ps2Adapter(Usb usb){
this.usb = usb;
}
public void ps2() {
usb.usb();
}
}
public class AdapterDemo {
@Test
public void testAdapter(){
Ps2 ps2 = new Ps2Adapter(new UsbImpl());
ps2.ps2();
}
}