适配器模式

概述

适配器模式中开发中可以说是使用率最高的设计模式了。在listview、recyclerview中都需要使用适配器模式,并且在开发中遇到最多的问题也往往是在adapter中。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。

使用场景

  • 系统需要使用现有的类,而此类的接口不符合系统的需要,即接口不兼容。
  • 想要建立一个可以重复使用的类,用于与一些彼此没有太大联系的一些类,包括一些可能在将来引进的类一起使用。
  • 需要一个统一的输出接口,而输入端的类型不可预知。

具体实现

public interface FiveVolt{
public int getVolt5();
}
public class Volt220{
public int getVolt220(){
return 220;
}
}
public class VoltAdapter extends Volt220 implements FiveVolt{
@Override
public int getVolt5(){
return 5;
}
}
public class Demo{
public static void main(String[] args){
VoltAdapter adapter=new Adapter();
System.out.println(adapter.getVolt5());
}
}

输出结果:

5

总结

适配器模式可以将两个原本没有关联的类融合在一起。adpater模式中开发中运用十分广泛,因此,掌握它还是非常有必要的。
优点:

  • 提高了类的复用。
  • 增加了类的透明度。
  • 灵活性好。

缺点:

  • 过多地使用适配器,会让系统非常零乱,不易整体进行把握。比如,明明看到调用的是 A 接口,其实内部被适配成了 B 接口的实现,一个系统如果太多出现这种情况,无异于一场灾难。因此如果不是很有必要,可以不使用适配器,而是直接对系统进行重构。
  • ßß由于 JAVA 至多继承一个类,所以至多只能适配一个适配者类,而且目标类必须是抽象类。
坚持原创技术分享,您的支持将鼓励我继续创作!
0%