设计模式-适配器模式
适配器模式属于行为设计模式。行为设计模式关注的是对象之间的职责分配,以及对象之间的通信。适配器模式通过改变一个类的接口来符合客户端的期望,使得原本由于接口不兼容而无法协作的类能够一起工作,这体现了对象间行为的协调和解耦。我理解为是一个和事佬。
代码结构图:
/**
* 需要适配的类
* @Author : MengYansong
* @create 2024/1/19 15:41
*/
public class Adaptee {
public void specificRequest(){
System.out.println("原方法");
}
}
/**
* 需要适配方法
* @Author : MengYansong
* @create 2024/1/19 15:42
*/
public class Target {
public void request(){
System.out.println("需要适配的方法");
}
}
/**
* 适配器
* @Author : MengYansong
* @create 2024/1/19 15:42
*/
public class Adapter extends Target{
private Adaptee adaptee = new Adaptee();
@Override
public void request() {
adaptee.specificRequest();
}
}
/**
* 适配器客户端
* @Author : MengYansong
* @create 2024/1/19 15:44
*/
public class AdaterClient {
public static void main(String[] args) {
// 通过适配器调用
Target target = new Adapter();
target.request();
System.out.println("=== === ===");
// 未通过适配器调用
Target target1 = new Target();
target1.request();
}
}
输出结果:
Connected to the target VM, address: '127.0.0.1:10663', transport: 'socket'
原方法
=== === ===
需要适配的方法
Disconnected from the target VM, address: '127.0.0.1:10663', transport: 'socket'
两个类所做的事情相同或相似,但是具有不同的接口时要使用适配器模式。