【九月打卡】第18天+适配器模式
2022/9/23 4:17:14
本文主要是介绍【九月打卡】第18天+适配器模式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
课程名称:Java设计模式精讲 Debug方式+内存分析
课程章节:第12章 适配器模式讲解+Coding+源码解析
主讲老师:Geely
课程内容:
适配器模式
从实现形式上看,适配器模式就是,扩展了目标接口中的方法功能(功能是适配者实现的)
【为什么不直接调用对应的适配者接口方法呢?目的就是为了保证调用端的主逻辑不需要改动。如果适配者有改动,最多只需要改动适配器的内容实现,而不用改动调用主流程。而适配器本身,应该是简单的逻辑,不会存在业务逻辑,业务逻辑在适配者实现,所以改动点就在适配器上,适配器没有业务逻辑,所以必然是简单的代码】
问题1)定义?:没有关联的接口协同工作
将一个类的接口转换成客户希望的另一个接口。
让原来不兼容的两个接口协同工作
总的来说是实现方式就是,将target(期望)和 adeptee(已有资源)通过adapter组合起来。
问题2)分类?
分类: 类适配器、对象适配器、接口适配器
问题3)角色?(场景就是rpc调用)
目标接口**(客户端调用接口)**:Target,该角色把其他类转换为我们期望的接口(期望转换成的资源)
被适配者: Adaptee 原有的接口,也是希望被改变的接口(已有资源)
适配器: Adapter, 将被适配者和目标接口组合到一起的类(将已有和期望组合。)
适配器实现方式:适配器类实现目标接口,目标接口中的方法调用适配者类
问题4)为什么要将,两个不兼容的接口,协同工作?
迪米特法则,不引用非关系类(出现在成员变量,方法的输入,输出参数中的类称为朋友类。),所以需要将两个非关系类,进行兼容,然后再调用。
问题5)调用过程和实现方式
调用过程:客户端调用 适配器实现的 目标接口方法,目标方法内部调用适配者接口
适配器实现方式:适配器类实现目标接口,目标接口中的方法调用适配者类
问题6) 实例
客户端,调用目标接口drive方法,适配器实现目标接口drive方法和聚合适配者。drive方法调用适配者方法。这样客户端调用drive方法,调用的就是适配者的实现。(就是适配器,实现了目标接口和引用关联了适配者)
客户端,调用发动机,获取了电能或光能的,
这篇关于【九月打卡】第18天+适配器模式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南