适配器:将一个客户无法使用的接口转换成客户期望的接口,使得原来不兼容的两个抽象对象可以在一起进行工作>>>
适配器UML图:
模式典型例子:
现有系统与生产厂商提供的接口无法整合
电源插座不匹配等等
对象适配器:通过在适配器对象中引用新接口对象,,,使得在引用不兼容对象的接口方法时调用新接口提供的方法操作.
package com.qd.adapter;
public interface UsbPort {
void workWithUsbPort();
}
package com.qd.adapter;
public interface PsPort {
void workWithPsPort();
}
package com.qd.adapter;
public class Ps2Usb implements UsbPort {
private PsPort psPort;
public Ps2Usb(PsPort psPort) {
this.psPort = psPort;
}
@Override
public void workWithUsbPort() {
System.out.println("------开始进行适配转换");
psPort.workWithPsPort();
System.out.println("------适配转换工作完成");
}
}
package com.qd.adapter;
public class Client {
public static void main(String[] args) {
PsPort port=new PsPort() {
@Override
public void workWithPsPort() {
System.out.println("psport工作进行中,,,,");
}
};
Ps2Usb ps2Usb=new Ps2Usb(port);
ps2Usb.workWithUsbPort();
}
}
输出结果:
------开始进行适配转换
psport工作进行中,,,,
------适配转换工作完成