适配器模式核心思想:将A接口的对象转化成B接口的对象,使之从外观上看似是B对象,但是确实A对象在执行实际的业务逻辑。
看到适配器模式的第一感觉就是:这也算个模式?就应该这样处理啊!!!生活中有很多鲜活的例子,如网络适配器(网卡),调制解调器,数据线,充电器等等。其缺点就是,需要有这么一个额外的东西才能进行转换。
适配器模式的好处:实现了良好的可扩展性和类复用性。
下面给出一个简单的实例,将PS/2的键盘转接成USB接口。
package adapterpattern;
/**
* PS键盘接口
*/
public interface PS2 {
String A();
String B();
String C();
}
package adapterpattern;
/**
* USB键盘接口
*/
public interface USB {
String A();
String B();
String C();
}
package adapterpattern;
/**
* PS2键盘
*/
public class PS2Keyboard implements PS2{
@Override
public String A() {
return "PS@A";
}
@Override
public String B() {
return "PS@B";
}
@Ov