登陆注册
2708800000019

第19章 适配器模式

时间:12月16日地点:大B房间人物:大B,小。

都说学好普通话,走遍中国都不怕。就好像Anne来到我们班,如果说她只会说英文,那我们好大一部分同学都不一定听得懂。可是她还会说中文,那以后和大家在一起沟通就好多了。就好比我们讲的适配器。

大B:“师弟,你知道什么是适配器模式吗?”

小A:“就是把一个类的接口转换成客户端所期待的另一种接口,从而使原接口不匹配而无法在一起工作的两个类能在一起工作。”

大B:“从功能上讲这些接口不兼容的类一般具有相同或相似的功能。通常我们通过修改该类的接口来解决这种接口不兼容的情形,但是如果我们不愿意为了一个应用而修改各原有的接口,或者我们压根就没有原有对象的源代码那该怎么办呢?此时Adapter模式就会派上大用场了。你能不能用代码来实现呐?”

小A:“好。我试一下。”

如果有两个编译好的(无源代码)类,类A有某些功能,但是需要一个xml读取模块才能工作,这个模块要实现这个接口:

public interface XmlReader{

public InputStream xmlReader();

}

你的另一个类B恰好有这个功能,但是B实现的是这个接口:

public interface ReaderXml{

public InputStream readerXml();

}

这个时候我们的做法是写个适配器

public class Adapter implements XmlReader extends B{

public InputStream xmlReader(){

return readerXml();

}

}

这个就是适配器模式了。

适配器模式还有另外一种实现方式

public class Adapter implements XmlReader

ReaderXml b=new B();

public InputStream xmlReader(){

return b。readerXml();

}

}

大B:“对,没错!上次有个朋友从美国给我带回一个微波炉,但因为美国的生活用电电压是110V,而中国的电压是220V,所以我不能使用,幸好朋友有先见之明,给我带回一个变压器,能把220V电压转换成110V电压,我才可以放心使用了。”

小A:“嘿嘿!师兄你那位朋友还挺有心的嘛!一定是位很要好的朋友吧?”

大B:“还不就是那个大学时候的死党老E,那鸟人大学毕业后一直在国外,听说最近要回来一趟哩!”

小A:“是吗?那到时你们可爽了,又可以一起喝酒啦!”

大B:“嘿嘿!是啊!毕业几年一直没见过那鸟人,跑国外喝了几年洋墨水,回来一定得好好宰他一顿。”

小A:“那是要的啦!”

大B:“对了,你编程学得不错,能不能把刚才我说的,也就是微波炉电压转换用代码表示?”

小A:“好。通过适配,使c220类能在c110类中使用。”

程序代码:

include《iostream。h》

class c220v

{

public:

void DianYa220v()

{

cout《“220v电压!”《endl;

}

};

class c110v

{

public:

virtual void DianYa110v()=0;

};

class adaper:public c110v

{

private:

c220v*c220obj;

public:

adaper(c220v*obj)

{

c220obj=obj;

}

void DianYa110v()

{

c220obj->DianYa220v();

cout《“经变压器转换成”《endl;

cout《“110v电压”《endl;

}

};

int main()

{

c220v*c220vobj=new c220v;

adaper adobj(c220vobj);

adobj。DianYa110v();

return 1;

}

运行结果:

220v电压!

经变压器转换成

110v电压

大B:“吼!非常不错喔!”

同类推荐
  • 产品经理入门攻略

    产品经理入门攻略

    《产品经理入门攻略》深入浅出地告诉大家什么是产品经理,结合了多位作者的亲身经历,解答了常见的工作问题。《产品经理入门攻略》集合了数十位优秀的作者,作为移动互联网时代一本难得的图书,适合产品经理和运营阅读,大家阅读时可以找到不少实用的工作方法。我们希望本书能成为移动互联网时代中学习产品的经典之作。
  • 黑客

    黑客

    本书描述了近代历史上的一个萌芽时期,追述了计算机革命中初期黑客的丰功伟绩,描述了黑客用默默无闻的行动为当今的数字世界照亮了一条道路,描述了那些打破陈规的MIT的学生,也描述了缔造出Altair和Apple Ⅱ电脑这些伟大产品的DIY文化。这些黑客勇于承担风险,勇于挑战规则,发现了计算机工程问题的巧妙解决方案。他们都有一个共同的价值观,那就是至今仍然长盛不衰的“黑客道德”。
  • 不懂PowerPoint就当不好经理

    不懂PowerPoint就当不好经理

    经理人如何用PowerPoint,来规划部门的发展,如何用PowerPoint来表达自己的经营主张?本书为各类经理人提供了从入门到提高,从原理到实战的一系列知识,相信本书将让演示文稿为经理人的管理效能加分!
  • 多媒体技术应用研究

    多媒体技术应用研究

    多媒体技术是以数字化为基础,能够对多种媒体信息进行采集、加工处理、存储、和传递,并能使各种媒体信息之间建立起有机的逻辑联系,集成为一个具有良好交互性的系统技术。
  • 终极智能:感知机器与人工智能的未来

    终极智能:感知机器与人工智能的未来

    在这本书中,作者讨论了狭义人工智能如何获得感知能力,进而发展为广义人工智能,预见了感知机器与人工智能时代的到来。和比尔·盖茨、埃隆·马斯克等知名人物的观点不同,作者认为人工智能对人类来说不是一种威胁,而是我们追求知识过程中的又一个阶梯。他引导读者去思考这样一些问题:我们为什么有价值?我们能创造出什么?如何在到处都是感知机器的世界里生存?人类将创造出智能的造物,这一想法本身就令人战栗,但如果作为人类,我们的隐藏角色就是那个造物主呢?自出现的那一天起,宇宙就一直在等待被更多的智能生命感知到。今天,我们即将进入感知机器与人工智能的时代,这一等待终于要结束了。
热门推荐
  • 相思是啥密

    相思是啥密

    高二那年,文茜遇到了人生中最重要的一群人。互相嫌弃却不离不弃的闺蜜——苏菱菀、林霖和苏越,也遇到了兜兜转转重新牵手的李冽。十年漫漫,青春的我们不散。
  • 九百年前认识你

    九百年前认识你

    少女安亭溪一进高中校门就对比她高两届的学霸加篮球小王子齐友嘉很是着迷。不料一次看比赛时,安亭溪被齐友嘉用脚踢过来的篮球砸中失声。17岁生日这天,安亭溪不慎落水。当她重新浮出水面时,发现自己身在九百年前的南宋,并顺手救起一位貌似齐友嘉的年轻公子。为能重新回到现在,安亭溪女扮男装来到李清照府上成了一名小厮。她无意中发现,最终的危险正在朝三年来一直被战乱和阴谋挟裹着的李清照步步逼近……
  • 世界如此美好,有你有我

    世界如此美好,有你有我

    走进学校大门,终于迎来了梦寐以求的大学生活,四年光阴,说长不长,说短不短,经历了太多,知道了太多,也明白了太多。艰难,痛苦,幸运,高兴,亲情,友情,爱情,一起交织出现……“而我最遗憾的事,却是错过了你!”大学毕业,步入社会,不知是否还能再次遇见你……
  • 汤姆·索亚历险记(中小学生必读丛书)

    汤姆·索亚历险记(中小学生必读丛书)

    《汤姆·索亚历险记》是一部充满童趣的小说。《汤姆·索亚历险记》的故事发生在密西西比河畔一个小镇上,小主人公汤姆·索亚天真活泼、不堪束缚、追求自由,厌恶枯燥的功课和刻板庸俗的生活环境,梦想着过海盗式的冒险生活。在一次意外中他和他的好朋友哈克贝利目击了一桩杀人命案,并最终战胜了恐惧,勇敢地站出来揭发了凶残的犯罪人,保护了无辜遭殃的镇民们。在这一过程中,他们凭自己的聪明机智破解了强盗们的藏宝之谜,并最终找到了宝藏,赢得了镇民的赞赏与敬佩。《汤姆·索亚历险记》是美国幽默大师马克·吐温有代表性的作品。
  • 笑倾天下

    笑倾天下

    他,南风国的四皇子,生性懒散,做事随性,为了摆脱做棋子的命运,他选择了做弃子。他,江湖上迅速崛起的暗门门主,行踪飘渺,集邪肆疏淡清冷于一身;他,南风最年轻的鬼面将军,冰冷的面具,卓越的武功,惊世的将才,威慑四国;他,他,他,收起懒散的那一刻,收起邪魅的那一刻,收起冰冷的那一刻,众人才发现,原来他是她,绝世之姿,祸世之颜,到底绝了谁的情,祸了谁的心?远尘,飘渺清逸,不染纤尘;————待前世今生记忆苏醒时,我终于明白自己存在于天地间的意义,原来的疏淡,原来的悲悯只因我不够完整,待我变得完整时,我便发誓再也不要遗忘……北傲天,蓝眸幽深,俊美无匹,狂妄,霸气,冷酷,残忍;————无论你是谁,无论你是男还是女,你,我势在必得,哪怕倾天下之力,你若想飞,我便折去你的双翼,你若想走,我便折断你的双腿,此生,你终将属于我,并且永为我所有,否则,我宁毁之。离幽,妖娆妩媚,魅惑动人;————年复一年,日复一日,我跟随着尘的脚步,我讨厌你,因为无论是在前世还是在今生,你都抢走属于我的尘,只是,为何在尘倒下去的那一刻,在看到你眼中延绵不尽的悲伤那一刻,我才发现我心中更为心疼的是你?君岐云,谦谦君子,温润如玉;————你是一缕阳光,一缕清泉,瞬间的相遇便铭记于心。南仲彦,五官俊美,优雅无比;————何时起,对你的欲望越来越多,亲情对我的束缚越来越淡薄,为你,遭受世人耻骂又如何。尤哈达,温和儒雅,俊秀绝伦;————为何,连停留你眼光的最后砝码也丢掉了?南永阳,阳光可爱;————为你,我愿放弃一切。蓝罗,俊美冷酷;————你是我永远的守护。***************************************************第一卷宫廷童年第二卷江湖风云第三卷群雄逐鹿第四卷花落谁家美男不断增加中,中间可能还会加上一些,若加了,我会提前写入简介,希望大家多多留言,多多收藏,多多投票,多多支持,泪心再此先谢过!【注意:该文已经设置为半价,全本订阅只需要一半的价格。】推荐自己的新文《天价小小儿》:《神战》:(精彩玄幻文)《无心皇后》:(精彩穿越文)推荐泪的新文:《狂妃纵世》(一样的穿越,不一样的精彩!)推荐朋友文文:《绝世战妃》骨脉《邪惑天下》曦珞妤《谍影战妃》骨脉《邪君囚妃》夜宦灭
  • 时星

    时星

    小霸王陆励脾气又臭又硬,招狗摸鸡的本事从来都是一流。后来终于闯了大祸,他爹陆国忠气的拿着鞭子要抽他,却抵不过一家老少在一旁哭天喊地的劝,那逆子还敢梗着脖子和他呛,气的陆国忠差点两眼一翻上西天。眼不见心不烦,把儿子踢到临市去,没家里护着他,看他还能翻出什么水花。多年之后,陆励终于长大成熟,时间洗刷掉少年时的莽撞冲动,宽厚的肩膀承担起作为陆家男人的责任。时至今日,回望过去,陆励都万分感激他爹当年的决定,才能让他在懵懂无知不知情滋味的年纪,遇见此生想要共度一生的人。从此一眼万年。从此一眼万年。
  • 追妻无门:女boss不好惹

    追妻无门:女boss不好惹

    青涩蜕变,如今她是能独当一面的女boss,爱了冷泽聿七年,也同样花了七年时间去忘记他。以为是陌路,他突然向他表白,扬言要娶她,她只当他是脑子抽风,他的殷勤她也全都无视。他帮她查她父母的死因,赶走身边情敌,解释当初拒绝她的告别,和故意对她冷漠都是无奈之举。突然爆出她父母的死居然和冷家有丝毫联系,还莫名跳出个公爵未婚夫,扬言要与她履行婚约。峰回路转,破镜还能重圆吗? PS:我又开新文了,每逢假期必书荒,新文《有你的世界遇到爱》,喜欢我的文的朋友可以来看看,这是重生类现言,对这个题材感兴趣的一定要收藏起来。
  • 医手遮天:妃常手段

    医手遮天:妃常手段

    被困火海,秦风意外来到磷火国,成了磷火国将军府家不受宠的嫡女!一来便被下人欺辱,还被后母和妹妹构陷,可她早已不是从前的秦风,她要叫所有人都不敢再欺负她!不过她全然未注意到,一人饶有兴致地勾起了唇角,深深记住了她这幅面孔。--情节虚构,请勿模仿
  • 走宁夏

    走宁夏

    在中华大地的西北边陲,有一片神奇而美丽的土地。那里,鄂尔多斯台地与绿色盆地共存,浩浩大漠与滔滔黄河同在,水乡景色与边塞风光交相辉映,西夏文化、阿拉伯文化与华夏文化同放异彩……这,就是被人们誉为“塞上明珠”的宁夏。
  • 宅斗不如养群鬼

    宅斗不如养群鬼

    大白话版程澜:傻不白不甜,死了。沈澜:不傻不白也不太甜,危在旦夕。这是一只鬼重生,必须送一群鬼轮回,否则会变成鬼的故事。小白话版程澜作为一只鬼重生了,后遗症是能看到鬼生时认识的那群鬼,而且必须完成鬼大爷们的遗愿才能稳稳当当的做人,否则魂飞魄散。于是重生的沈澜拥有两个使命,为家人翻案,为鬼大爷们超度。且看程澜和一众鬼大爷们、少年人们,一步步经历、奋斗、成长……