🍱 适配器模式
2022年6月20日
- 设计模式
🍱 适配器模式
1. 概述
1) 是什么
- 将一个对象 | 类的接口转化成用户需要的另外一个接口
- 从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作
2) 优点
- 单一原则:将代码或者数据转换的过程从主要业务逻辑区分出来
- 开闭原则:通过使用配置文件,可以很方便地更换适配器,也可以在不修改原有代码的基础上增加新的适配器类
3) 缺点
- 过多地使用适配器,会让系统非常零乱,不易整体进行把握,比如,明明看到调用的是 A 接口,其实内部被适配成了 B 接口的实现
2. 代码示例
1) 场景 & 目标
- 现在有一个 Apple 手机,但是没有 Apple 手机的充电器,而是有 Android 手机的充电器
- 现想给 Apple 手机 用 Android 手机的充电器 充电
- 只需要得到一个 Android 充电器转 Apple 充电器的转换头
- 就可以让 Apple 手机 连转换头,而转换头另一边连 Android 手机的充电器
2) 代码示例
3. 应用
1) HandlerAdapter
- SpringMVC中的适配器 HandlerAdapter
- HandlerAdapter 根据 Handler 规则执行不同的 Handler
- Spring定义了一个适配接口,使得每一种 Controller 有一种对应的适配器实现类,让适配器代替 controller 执行相应的方法