定义:将一个类的接口转换成客户希望的另一个接口,使得原本由于接口不兼容不能一起工作的那些类可以一起工作。
代码:
package adapter_model;
/**
* @author naivor
* 适配器模式-场景类
*/
public class AdapterModel {
public static void main(String [] args){
CurrentData cur=new CurrentData();
TargetData tar=new Adapter(cur);
tar.doSomething(); //tar对象通过适配器处理了cur对象的业务
}
}
/**
*
* @author naivor
* 适配器模式-目标数据类
*/
class TargetData{
public void doSomething(){
//TargetData的业务逻辑
}
}
/**
*
* @author naivor
* 适配器模式-当前数据类
*/
class CurrentData{
public void doOtherThing(){
//TargetData的业务逻辑
}
}
/**
*
* @author naivor
* 适配器模式-适配器,将CurrentData适配给TargetData
*/
class Adapter extends TargetData{
private CurrentData currentData;
public Adapter(CurrentData currentData) {
this.currentData=currentData;
}
@Override
public void doSomething() {
currentData.doOtherThing();
}
}