当前位置: 首页 > news >正文

设计模式 -- 适配器模式

前言

月是一轮明镜,晶莹剔透,代表着一张白纸(啥也不懂)

央是一片海洋,海乃百川,代表着一块海绵(吸纳万物)

泽是一柄利剑,千锤百炼,代表着千百锤炼(输入输出)

月央泽,学习的一种过程,从白纸->吸收各种知识->不断输入输出变成自己的内容

希望大家一起坚持这个过程,也同样希望大家最终都能从零到零,把知识从薄变厚,再由厚变薄!

一、什么是适配器模式?

        适配器模式,是一种结构型设计模式,它允许将不兼容的对象包装到适配器中,以便它们可以与其他对象工作在一起,比如现实中常用的适配器,笔记本电脑上的充电线就可以将不同的电压转换成电脑适配的电压,那这样出国工作就不需要准备不同的充电线.

二、适配器模式的优缺点

优点:

  1. 适配器模式可以将不兼容的接口转换为兼容的接口,从而使得原本不能一起工作的类能够协同工作

  2. 适配器模式可以增加代码的复用性和灵活性,因为它可以将已有的类适配到新的接口上,而不需要修改原有代码

  3. 适配器模式可以提高系统的可维护性和可扩展性,因为它可以将不同的类适配到同一个接口上,从而降低了系统的耦合度

缺点:

  1. 增加了额外的代码复杂性,增加了系统的维护成本

  2. 适配器模式需要额外的对象来完成适配工作,因此可能会影响系统的性能

  3. 适配器模式可能会导致代码的混乱,因为需要同时处理新旧接口,这可能会导致代码的可读性降低

  4. 适配器模式不适合用于一些复杂的场景,例如需要对多个接口进行适配

三、适配器模式的结构:

目标抽象类:Computer,该角色是对外暴露的接口,可以是抽象类或者接口,也可以是具体类

被适配器:220U和480U,希望被适配的

适配器:Charger,将被适配这和目标抽象类组合在一起的 

四、适配器模式实战

        以上面结构图为例,电脑充电器将480U和220U的电压转化为电脑能够正常使用的12U的电压

1.创建Voltage电压接口

2.创建需要被适配的220U和480U

 

 3.创建具体使用类Computer

4.适配器Charger

5.测试适配

 

6.测试结果

 

五.总结

 适配器模式常常用于以下场景:

  1. 将一个类的接口转换成客户端所期望的另一个接口。

  2. 当需要使用一个已经存在的类,但是它的接口不符合需求时,可以使用适配器模式来进行接口转换。

  3. 当需要复用一些现有的类,但是这些类的接口不一定满足当前需求时,可以使用适配器模式来进行接口转换。

http://www.lryc.cn/news/60663.html

相关文章:

  • STM32之增量式编码器电机测速
  • 一图看懂 xlsxwriter 模块:用于创建 Excel .xlsx 文件, 资料整理+笔记(大全)
  • 【社区图书馆】NVMe协议的命令
  • Nginx网站服务
  • 第八篇 Spring 集成JdbcTemplate
  • 双塔模型:微软DSSM模型浅析
  • DAY 44 Apache网页优化
  • 移动端手机网页适配iPad与折叠屏设备
  • 深入剖析 Qt QMap:原理、应用与技巧
  • SpringBoot使用Hbase
  • SQL优化总结
  • 【python学习】基础篇-字典的基本操作 获取当前日期时间
  • Python FreeCAD.Vector方法代码示例
  • HDFS 梳理
  • ChatGPT团队中,3个清华学霸,1个北大学霸,共9位华人
  • 通过工具生成指定 类型 大小 文件
  • 超外差收音机的制作-电子线路课程设计-实验课
  • TensorFlow 深度学习实战指南:1~5 全
  • 【数据结构】队列的实现
  • 【数据库】— 无损连接、Chase算法、保持函数依赖
  • 用英语翻译中文-汉字英文翻译
  • 瑞吉外卖项目——缓存优化
  • 从头创建一个新的浏览器,这合理吗?
  • TypeScript泛型类型和接口
  • docker命令
  • 2023 年 3 月 NFT 月度报告
  • 【http】 get方法和Post方法区别;http和https
  • 第三章 法的渊源与法的分类
  • 在Ubuntu18.04或者20.04下搭建edk2运行环境
  • 多线程编程常用函数用法