码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 适配器模式:类适配器模式 对象适配器模式 详细讲解


     

    定义:

    将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能 一起工作。 适配器模式分为类适配器模式和对象适配器模式,前者类之间的耦合度比后者高,且要求程序员了解现 有组件库中的相关组件的内部结构,所以应用相对较少些。

    结构

    适配器模式(Adapter)包含以下主要角色:

    目标(Target)接口:当前系统业务所期待的接口,它可以是抽象类或接口。

    适配者(Adaptee)类:它是被访问和适配的现存组件库中的组件接口。

    适配器(Adapter)类:它是一个转换器,通过继承或引用适配者的对象,把适配者接口转换成 目标接口,让客户按目标接口的格式访问适配者。 

    类适配器模式

    实现方式:定义一个 适配器类 来实现当前系统的业务接口(目标接口),同时又继承现有组件库中已经存在的组件(适配者类)。

    读卡器

    现有一台电脑只能读取SD卡,而要读取TF卡中的内容的话就需要使用到适配器模式。创建一个读卡 器,将TF卡中的内容读取出来。

    标题

     

     

     

     

    类适配器模式违背了合成复用原则。类适配器是客户类有一个接口规范的情况下可用,反之不可用。 

     对象适配器模式

    实现方式:对象适配器模式可釆用将现有组件库中已经实现的组件引入适配器类中,该类同时实现当前 系统的业务接口。

     

     

     注意:还有一个适配器模式是接口适配器模式。当不希望实现一个接口中所有的方法时,可以创 建一个抽象类Adapter ,实现所有方法。而此时我们只需要继承该抽象类即可。

    5 应用场景

    以前开发的系统存在满足新系统功能需求的类,但其接口同新系统的接口不一致。

    使用第三方提供的组件,但组件接口定义和自己要求的接口定义不同。

     

     

  • 相关阅读:
    Oracle Primavera Unifier组合管理器(Portfolio Manager)
    html静态网站基于动漫主题网站网页设计与实现共计10个页面——二次元漫画
    postgresql源码学习(49)—— MVCC⑤-cmin与cmax 同事务内的可见性判断
    如何开启Linux的SSH服务?sudo service ssh start和sudo systemctl enable ssh两种不同的开启方式有什么区别?
    CSS特效007:绘制3D文字,类似PS效果
    Windows保护模式(七)2-9-9-12分页
    微商助理 防伪防窜货溯源代理授权查询系统源码
    ubuntu使用docker拉取环境,并对环境进行优化
    Linux学习之MySQL常见面试题目
    Centos OpenVp*
  • 原文地址:https://blog.csdn.net/qq_43936583/article/details/126805607
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号