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

医疗网站备案抖音关键词搜索指数

医疗网站备案,抖音关键词搜索指数,上海做得好的网站建设公司,国外哪些网站做产品推广比较好设计模式中的“万能转换器”——适配器模式 一、核心逻辑二、类适配器 vs 对象适配器类适配器(继承实现)对象适配器(组合实现) 三、应用场景四、优缺点五、适配器模式的本质 你用过Type-C转HDMI的转换器吗?它的作用很简…

设计模式中的“万能转换器”——适配器模式

  • 一、核心逻辑
  • 二、类适配器 vs 对象适配器
    • 类适配器(继承实现)
    • 对象适配器(组合实现)
  • 三、应用场景
  • 四、优缺点
  • 五、适配器模式的本质

在这里插入图片描述

你用过Type-C转HDMI的转换器吗?它的作用很简单:让Type-C接口的电脑能连接HDMI接口的显示器。适配器模式就是软件世界的“转换器”,它能将两个不兼容的接口(比如数据格式、协议、硬件规格)连接起来,让它们无缝协作。

一、核心逻辑

适配器模式的核心是中间商思维:不改变原有代码,而是增加一个中间层(适配器)来协调矛盾。它的三个关键角色:

  1. 目标接口(Target):用户需要的接口(如显示器的HDMI接口)。
  2. 适配者类(Adaptee):已存在的、功能完善但接口不兼容的类(如电脑的Type-C接口)。
  3. 适配器类(Adapter):将适配者的功能“翻译”为目标接口(如Type-C转HDMI转换器)。

举个栗子:

  • 显示器(目标接口):需要HDMI信号输入。
  • 笔记本电脑(适配者):只能输出Type-C信号。
  • 转换器(适配器):将Type-C信号转换为HDMI格式。

二、类适配器 vs 对象适配器

类适配器对象适配器
实现方式继承被适配类(如extends TypeCDevice组合被适配对象(如private TypeCDevice
灵活性仅支持单一被适配类支持多种设备(如Type-C/USB-A/DP接口)
代码耦合度高(需继承具体类)低(仅依赖接口)
适用场景专用转换器(如固定品牌设备)多功能转换坞(需兼容多种协议)

类适配器(继承实现)

场景:专用Type-C转HDMI线(适配关系固定)

// 目标接口:HDMI输出协议  
interface HDMI {  void sendHDMISignal();  
}  // 被适配者:Type-C接口的笔记本  
class TypeCDevice {  void sendTypeCSignal() {  System.out.println("发送Type-C数字信号");  }  
}  // 类适配器(继承TypeCDevice,实现HDMI接口)  
class TypeCToHDMIAdapter extends TypeCDevice implements HDMI {  @Override  public void sendHDMISignal() {  super.sendTypeCSignal();  // 调用父类方法  System.out.println("类适配器:Type-C信号 → HDMI信号转换");  }  
}  // 客户端调用  
public class Client {  public static void main(String[] args) {  HDMI adapter = new TypeCToHDMIAdapter();  adapter.sendHDMISignal();  }  
}  

输出结果

发送Type-C数字信号  
类适配器:Type-C信号 → HDMI信号转换  

特点

  • 适配器直接继承被适配者(TypeCDevice)
  • 代码耦合度高,无法动态更换适配对象

对象适配器(组合实现)

场景:多功能转换坞(支持Type-C/USB-A转HDMI)

// 目标接口:同上HDMI接口  // 对象适配器(实现HDMI接口,持有TypeCDevice实例)  
class UniversalHDMIAdapter implements HDMI {  private TypeCDevice typeCDevice;  UniversalHDMIAdapter(TypeCDevice device) {  this.typeCDevice = device;  }  @Override  public void sendHDMISignal() {  typeCDevice.sendTypeCSignal();  System.out.println("对象适配器:动态转换信号 → HDMI");  }  
}  // 客户端调用  
public class Client {  public static void main(String[] args) {  TypeCDevice macbook = new TypeCDevice();  HDMI adapter = new UniversalHDMIAdapter(macbook);  adapter.sendHDMISignal();  }  
}  

输出结果

发送Type-C数字信号  
对象适配器:动态转换信号 → HDMI  

特点

  • 适配器通过组合持有被适配者对象
  • 可动态适配不同设备(如同时支持Type-C和USB-A输入)

三、应用场景

  • 硬件接口转换:Type-C转网口、USB转串口。
  • 数据格式兼容:JSON转XML、旧版API对接新版系统。
  • 协议适配:蓝牙设备连接不同操作系统的手机。

四、优缺点

  • 优点:
    • 复用性:老旧设备无需改造即可接入新系统。
    • 灵活性:一个适配器可支持多场景(如三合一充电线)。
  • 缺点:
    • 过度使用会臃肿:就像包里的各种转换器,太多反而难以管理。

五、适配器模式的本质

  • 核心价值:通过中间层转换接口冲突,符合开放-封闭原则(不修改原有代码)
  • 硬件映射
    • 类适配器 → 焊接式固定转换线(如苹果官方Type-C转HDMI线)
    • 对象适配器 → 第三方多功能扩展坞(支持热插拔)
  • 开发启示:优先使用对象适配器,避免Java单继承的限制

通过HDMI场景的深入解析可见,适配器模式是接口冲突的终极解决方案。无论是代码中的协议转换,还是你桌上那根“救命”的Type-C转HDMI线,都在默默践行这一设计哲学。

http://www.dtcms.com/a/408898.html

相关文章:

  • 百度手机模板网站图片做网站连接
  • 自己做的网站打不开了windows7优化大师下载
  • 阿里巴巴的网站建设分销系统什么意思
  • 成都建设网站费用自建设网站
  • 网站管理建设电子商务网站推广方法和技巧
  • 服装网站建设优点有哪些wordpress 首页调用最新文章
  • 一流的营销型网站建设如何做好企业网站
  • 我要做个网站网站模板紫色
  • 网站建设会出现哪些问题绍兴网站建设公司
  • 乐清 网站建设域名多少钱一年
  • 如何在阿里云部署网站wordpress导航调用代码
  • 优购物官方网站购物WordPress缩略图短代码
  • 龙华做网站怎么样wordpress 整合
  • 做网站需要多少人ui培训排名
  • 阳光梦网站建设正版搜索引擎优化
  • 交易网站开发合同无锡网站制作选哪家
  • 做设计找素材那个网站最好用网站建设实力
  • 电子商务网站开发费用调研报告大连网站优化
  • 网站建设规划书费用预算济南住房和城乡建设局网站
  • 深度网营销型网站建设山东泰安网络推广
  • 哈尔滨公司建站模板定制网络监控方案
  • 葫芦岛手机网站建设十二冶金建设集团有限公司网站
  • 网站外部优化搜索引擎推广步骤
  • godaddy 网站上传网页制作工具有什么
  • app和网站的成本区别东营市垦利区胜坨填建设站的网站
  • 网站电子报怎么做郑州企业网站建设费用
  • iis 做网站如何仿制手机版网站
  • 做网站推广哪家好闵行区做网站
  • 自己做婚恋网站58同城类似的网站开发
  • php网站空间企业信息年报系统