https://www.cnblogs.com/V1haoge/p/6479118.html
1. 类适配器
public interface Ps2 { //ps2的接口 void isPs2(); } public interface Usb { //Usb的接口 void isUsb(); } public class Usber implements Usb{ //Usb接口的实现 @Override public void isUsb() { System.out.println("USB kou"); } } //通过类的继承来实现接口的转换适配 public class Adapter extends Usber implements Ps2{ //适配器,继承Usb 从而可以使用Usb的方法,
实现了Ps2 从而使用时 是用的是Ps2的接口 @Override public void isPs2() { isUsb(); //在适配器中通过转换,从而调用的ps2而可以使用Usb } } public class Clienter { public static void main(String[] args) { Ps2 ps2=new Adapter(); ps2.isPs2(); } }
2、对象适配器
public interface Usb { //usb的接口 void isUsb(); } public interface Ps2 { //ps2接口 void isPs2(); } public class Usber implements Usb{ usb接口的具体实现 @Override public void isUsb() { System.out.println("usb kou"); } } public class Adapter implements Ps2 { //想要通过ps2来访问实际的usb接口 //在适配器类中,新建一个私有变量,在初始化时将usb对象导入,在ps2的接口中去调用usb接口 private Usb usb; public Adapter( Usb usb) { this.usb=usb; } @Override public void isPs2() { usb.isUsb(); } } public class Clienter { public static void main(String[] args) { Ps2 ps2=new Adapter(new Usber()); ps2.isPs2(); } }
3、接口适配器模式