
Design Pattern - Adapter
发布日期:2022-02-24 11:36:06
浏览次数:6
分类:技术文章
本文共 551 字,大约阅读时间需要 1 分钟。
概述
在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。那么如何应对这种“迁移的变化”?如何既能利用现有对象的良好实现,同时又能满足新的应用环境所要求的接口?这就是本文要说的Adapter 模式。
意图
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
结构图
图1 类的Adapter模式结构图
图2 对象的Adapter模式结构图
实现要点
1.Adapter模式主要应用于“希望复用一些现存的类,但是接口又与复用环境要求不一致的情况”,在遗留代码复用、类库迁移等方面非常有用。
2.Adapter模式有对象适配器和类适配器两种形式的实现结构,但是类适配器采用“多继承”的实现方式,带来了不良的高耦合,所以一般不推荐使用。对象适配器采用“对象组合”的方式,更符合松耦合精神。
3.Adapter模式的实现可以非常的灵活,不必拘泥于GOF23中定义的两种结构。例如,完全可以将Adapter模式中的“现存对象”作为新的接口方法参数,来达到适配的目的。
4.Adapter模式本身要求我们尽可能地使用“面向接口的编程”风格,这样才能在后期很方便的适配。
转载地址:https://blog.csdn.net/iteye_2582/article/details/82211156 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2023年09月23日 01时09分11秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Redis集群创建跳N坑之路
2019-03-07
计数器的VHDL设计
2019-03-07
SpringBoot整合Swagger2,再也不用维护接口文档了!
2019-03-07
如何去除本地项目的git版本控制
2019-03-07
微信小程序实现人脸识别认证
2019-03-07
微信小程序勾选协议与提交按钮联动
2019-03-07
vscode-git中的U,M和D文件标记含义
2019-03-07
JavaScript最新手机号码、电话号码正则表达式
2019-03-07
推荐14个可以展示你代码的网站
2019-03-07
常见的CSS面试题(附答案)
2019-03-07
JavaScript一些常用 API整理汇总
2019-03-07
自适应 CSS 栅格布局
2019-03-07
小程序之 保存canvas生成商品图片附加小程序二维码 分享到朋友圈
2019-03-07
Js阻止事件冒泡与阻止默认事件
2019-03-07
JavaScript单行代码
2019-03-07
JavaScript开发优化技巧
2019-03-07
2020 DASCTF&BJD MISC WriteUp
2019-03-07
CTFshow DJBCTF MISC(大吉杯) WP
2019-03-07
基于go-cqhttp实现QQ机器人
2019-03-07
HTML基础_1
2019-03-07