Java设计模式——适配器模式用法详解
适配器模式(Adapter Pattern)是Java开发中常用的设计模式之一,属于结构型设计模式,下面将从适配器模式的基本原理、代码示例、以及它的优点缺点和使用场景进行详细介绍。
一、基本原理
用于将一个类的接口转换成客户端期望
的另一个接口。适配器模式允许原本由于接口不兼容而无法一起工作的类能够协同工作。
二、代码示例
// 目标接口
interface Target {
void request();
}
// 适配者类
class Adaptee {
public void specificRequest() {
System.out.println("Adaptee ");
}
}
// 类适配器
class ClassAdapter extends Adaptee implements Target {
@Override
public void request() {
specificRequest();
}
}
// 对象适配器
class ObjectAdapter implements Target {
private Adaptee adaptee;
public ObjectAdapter(Adaptee adaptee) {
this.adaptee = adaptee;
}
@Override
public void request() {
adaptee.specificRequest();
}
}
// 测试代码
public class AdapterPatternExample {
public static void main(String[] args) {
// 使用类适配器
Target classAdapter = new ClassAdapter();
classAdapter.request();
// 使用对象适配器
Adaptee adaptee = new Adaptee();
Target objectAdapter = new ObjectAdapter(adaptee);
objectAdapter.request();
}
}
三、适配器模式的优点、缺点、使用场景
优点:
- 可以让原本
不兼容的接口协同工作
,提高了系统的灵活性。
缺点:
- 增加了系统的复杂性,引入了
额外的适配器类
。
使用场景:
- 当需要将一个类的接口
转换成客户端期望的另一个接口
时,可以使用适配器模式。