关系经济人类预测化学自然
投稿投诉
自然科学
知识物理
化学生物
地理解释
预测理解
本质社会
人类现象
行为研究
经济政治
心理结构
关系指导
人文遗产

23种Java设计模式系列适配器模式定义模型以及应用场景详解

12月8日 飞虹谷投稿
  适配器模式无论是在生活中的场景还是框架的底层代码实现里都有大量的运用,属于结构型模式比较常用的,需要重点掌握mikechen适配器模式的定义
  适配器模式(Adapter)的定义如下:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。
  在现实生活中,经常出现两个对象因接口不兼容而不能在一起工作的实例,这时需要第三者进行适配(转换)。
  比如:美版和港版电脑的插头与国行不一样,所以我们需要更换电源适配器,或者增加一个转换插头来解决问题。
  适配器模式的模型
  适配器模式(Adapter)包含以下主要角色:
  1。目标(Target)接口
  当前系统业务所期待的接口,它可以是抽象类或接口。2。适配者(Adaptee)类
  它是被访问和适配的现存组件库中的组件接口。3。适配器(Adapter)类
  它是一个转换器,通过继承或引用适配者的对象,把适配者接口转换成目标接口,让客户按目标接口的格式访问适配者。适配器模式的实现
  1。对象适配器1)创建目标接口packagecom。mikechen。java。design。adapter。model。目标接口authormikechenpublicinterfaceTarget{源类有此方法voidsampleOperation1();源类无此方法voidsampleOperation2();}2)创建被适配的类packagecom。mikechen。java。design。adapter。model。被适配的类authormikechenpublicclassAdaptee{源类有此方法publicvoidsampleOperation1(){}}3)创建适配器packagecom。mikechen。java。design。adapter。model。适配器authormikechenpublicclassAdapterimplementsTarget{源privateApublicAdapter(Adapteeadaptee){super();this。}源类Adaptee有方法sampleOperation1因此适配器类直接委派即可OverridepublicvoidsampleOperation1(){adaptee。sampleOperation1();}源类没有此方法适配器类补充此方法OverridepublicvoidsampleOperation2(){重写方法}}2。类适配器1)创建目标接口packagecom。mikechen。java。design。adapter。model。目标接口authormikechenpublicinterfaceTarget{这是源类Adaptee也有的方法voidsampleOperation1();这是源类Adapteee没有的方法voidsampleOperation2();}2)创建被适配的类packagecom。mikechen。java。design。adapter。model。被适配的类authormikechenpublicclassAdaptee{publicvoidsampleOperation1(){}}3)创建适配器packagecom。mikechen。java。design。adapter。model。适配器authormikechenpublicclassAdapterextendsAdapteeimplementsTarget{源类没有方法sampleOperation2,因此适配器类补充上这个方法OverridepublicvoidsampleOperation2(){重写方法}}适配器模式的优缺
  1。优点1)更好的复用性
  系统需要使用现有的类,而此类的接口不符合系统的需要,那么通过适配器模式就可以让这些功能得到更好的复用。2)透明、简单
  客户端可以调用同一接口,因而对客户端来说是透明的。3)更好的扩展性
  在实现适配器功能的时候,可以调用自己开发的功能,从而自然地扩展系统的功能。4)解耦性
  将目标类和适配者类解耦,通过引入一个适配器类重用现有的适配者类,而无需修改原有代码。5)符合开放关闭原则
  同一个适配器可以把适配者类和它的子类都适配到目标接口,可以为不同的目标接口实现不同的适配器,而不需要修改待适配类。2。缺点
  过多的使用适配器,会让系统非常零乱,不易整体进行把握。适配器模式的应用场景
  1。封装有缺陷的接口设计
  假设我们依赖的外部系统在接口设计方面有缺陷(比如包含大量静态方法),引入之后会影响到我们自身代码的可测试性。
  为了隔离设计上的缺陷,我们希望对外部系统提供的接口进行二次封装,抽象出更好的接口设计,这个时候就可以使用适配器模式了。2。统一多个类的接口设计
  某个功能的实现依赖多个外部系统,通过适配器模式,将它们的接口适配为统一的接口定义,然后我们就可以使用多态的特性来复用代码逻辑。3。替换依赖的外部系统
  把项目中依赖的一个外部系统替换为另一个外部系统的时候,利用适配器模式,可以减少对代码的改动。4。兼容老版本接口
  在做版本升级的时候,对于一些要废弃的接口,不直接将其删除,而是暂时保留,并且标注为deprecated,并将内部实现逻辑委托为新的接口实现。
  这样做的好处是,让使用它的项目有个过渡期,而不是强制进行代码修改,这也可以粗略地看作适配器模式的一个应用场景。5。适配不同格式的数据
  适配器模式主要用于接口的适配,实际上,它还可以用在不同格式的数据之间的适配。
  比如,把不同格式的数据,统一为相同的格式,也可以看作一种数据适配器,以方便存储和使用。
  更多架构技术干货,私信【架构】即可查看我原创的300期BAT架构技术系列文章与1000大厂面试题答案合集。
投诉 评论 转载

神锋被造谣退役,辽宁将签约实力中锋,外援实力排行榜,马尚居首神锋被造谣退役这几天,很多自媒体都在说,丁彦雨航在与苏群的连线中,说自己正准备在本赛季结束后宣布退役。理由就是自己的膝伤严重,现在不但没有好转,还每况愈下。消息一出……有情的大美烟台(五)圆梦烟台说起烟台,我一点也不陌生,从小在那儿成长起来的。上完幼儿园,去读小学,中学毕业以后,16岁那年正值青春年华,向往军旅生涯,告别父母,告别烟台,毅然选择了当兵,从此……身家140多亿内蒙古富豪?华泰汽车老板被抓,都是造车圈地惹的近日,华泰汽车老板张秀根被批捕的消息,引发汽车圈高度关注。他一手缔造的华泰汽车,曾经是国内造车界鼻祖之一。如今华泰汽车濒临破产倒闭,张秀根被抓,这一切到底是为什么呢?其实都是造……现役五位或将名垂青史的球星詹姆斯领衔,字母落榜,5人都是MV随着勇士夺冠之后,库里拿下了生涯第一座总决赛MVP,这也让很多媒体认为库里已经具备了冲进历史前十的实力,虽然库里能不能进历史前十的争议很大,但是不可否认库里已经接近了历史前十的……孩子的无知引燃的火灾这究竟是谁的错真是把我气死了,昨天晚上我们家楼下发生了家具着火的事件,关键问题是家具的边上还放着我的电动车,而且正在充电。此图片来自网络事情是这样的,当时我正在家里吃饭,突然听到……一瞬竟成永别车祸何其多,事故难断绝。它像凶残的野兽张着血盆的大口,隐身在日常的生活工作中,潜藏在看似平静每分每秒里,只等我们的神经一旦麻痹,便在突如其来的攻击中吞噬着我们脆弱的肉体,再给亲……名模肯达尔詹娜逛街被拍,穿灰色高开衩长裙,身材玲珑十分吸睛近日,美国著名模特、演员肯达尔詹娜被媒体拍摄到在巴黎逛街,她身穿灰色高开衩长裙,外面配搭同样颜色的外衣。她走在街上,十分吸引人们的眼球。我们看到肯达尔詹娜身穿的灰色长裙和……23种Java设计模式系列适配器模式定义模型以及应用场景详解适配器模式无论是在生活中的场景还是框架的底层代码实现里都有大量的运用,属于结构型模式比较常用的,需要重点掌握mikechen适配器模式的定义适配器模式(Adapter)的……三伏养阳要趁早,建议常吃这7样,补阳气不上火,秋冬不怕冷三伏养阳要趁早,建议常吃这7样,补阳气不上火,秋冬不怕冷冬病夏治三伏天正是补阳的好时间,可以吃一些补充阳气的食物,三伏天扶阳要趁早,建议常吃这7样,补阳气不上火,秋冬不怕……威唐工业6亿定增背后转型羸弱,内外交困钛媒体深度汽车零部件概览,图源视觉中国新一笔定增公告前夕,在大股东连续减持的刀光剑影中,威唐工业(300707。SZ)最近60个交易日内股价跌幅已逼近40,将初冬的寒气漫灌到一万余……NBA科比大女儿晒自拍!白色连衣裙彰显身材经过培训后衣品提升NBA巨星科比去世后,科比的妻子瓦妮莎和三个女儿受到了球迷和媒体的关注,如今凭借科比的光环,她们也成了自带流量的名人,其中瓦妮莎更是如此,40岁的她甚至比卡戴珊家族的关注度还要……连续22天回购,腾讯回应减持传闻没有任何规划或目标金额读创深圳商报记者陈燕青20日晚,有市场传言称,腾讯控股在考虑减持其在美团、贝壳、滴滴等公司所持的股权,为股票回购和新业务提供资金。对此,腾讯相关人士对记者表示,腾讯没有任……
一剂甘草泻心汤,解决你的上热下寒,让你不怕上火也不怕冷自信是一种积极的心态,相信自己一定能做好20个护肤真相!过了保质期的护肤品还能用吗?iPhone14Pro概念图,5000万三摄侧边指纹,相机模甄子丹探班王宝强,两人搂肩合影,私下也有着亲密的友谊关系全球最大集装箱船首航广州港南沙港区化妆老师手把手教新手小白化妆遮瑕和手法印尼在WTO输了镍出口禁令案,但新的关税措施正在路上独家关注小鹏汽车逆势增资100亿元,这是在给市场信心?一个小工具解决电脑运行特殊软件蓝屏问题,小白也可以轻松上手苹果手机数据怎么迁移大兴飞来百只银鸥,画面太美
助听器多大年龄可以戴?烛影摇红上元有怀原文及翻译注释赏析奥运冠军张继科,成娱乐圈宠儿,女友都是大牌,不愁工作如何更换手机qq默认主题甲状腺疾病切忌过度检查和治疗纯干货:共享经济再现“死亡”公式,快看看你中招没?中年失业的原因是什么?中年失业焦虑怎么办?小行星撞地球?地球你礼貌吗杭州机动车牌照转让可以么华为手机原相机怎么关美颜华为手机原相机关美颜方法合理的亲子沟通,帮助孩子正确打开交流方式写春游作文范文400字

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找菏泽德阳山西湖州宝鸡上海茂名内江三亚信阳长春北海西安安徽黄石烟台沧州湛江肇庆鹤壁六安韶关成都钦州