这种设计模式主要是作为两种不相容的类的一个桥梁,同时提高一些类的兼容性。例如在做Android开发时,最常用到适配器的地方就是ListView,RecycleView等。我们假设一下如果没由一个Adapter,这些View将会有极大的限制,对于不同类型的外部数据,要想正常显示,要设计许多子类来适应,而现在提供一个统一的Adapter,提供统一的接口来接受外部数据和向View提供数据,就使得开发变得轻松很多,可以使一些类更加独立。
简单实现:
目标类
public interface FiveVolt {
int getVolt5();
}
外部需要转换的类
public class Volt220 {
public int getVolt220(){
return 220;
}
}
适配器
public class VoltAdapter implements FiveVolt {
Volt220 volt220;
public VoltAdapter(Volt220 adaptee){
volt220 = adaptee;
}
public int getVolt220(){
return 220;
}
@Override
public int getVolt5() {
return 5;
}
}
测试类
public class test {
public static void main(String[] args) {
VoltAdapter adapter = new VoltAdapter(new Volt220());
System.out.println(adapter.getVolt5());
}
}
基本就是我们日常生活一个例子的抽象,通过适配器将220v电压转换为5v电压。
网友评论