设计模式-适配器模式示例-全球今亮点

2023-05-04 12:26:40 来源: 腾讯云


(相关资料图)

下面是一个完整的适配器模式的Java代码示例:

// 目标接口public interface MediaPlayer {   public void play(String audioType, String fileName);}// 被适配对象public class Mp4Player {   public void playMp4(String fileName) {      System.out.println("Playing mp4 file. Name: "+ fileName);    }}// 被适配对象public class VlcPlayer {   public void playVlc(String fileName) {      System.out.println("Playing vlc file. Name: "+ fileName);    }}// 适配器public class MediaAdapter implements MediaPlayer {   AdvancedMediaPlayer advancedMusicPlayer;   public MediaAdapter(String audioType){      if(audioType.equalsIgnoreCase("vlc") ){         advancedMusicPlayer = new VlcPlayer();             }else if (audioType.equalsIgnoreCase("mp4")){         advancedMusicPlayer = new Mp4Player();      }     }   @Override   public void play(String audioType, String fileName) {      if(audioType.equalsIgnoreCase("vlc")){         advancedMusicPlayer.playVlc(fileName);      }else if(audioType.equalsIgnoreCase("mp4")){         advancedMusicPlayer.playMp4(fileName);      }   }}// 客户端public class AudioPlayer implements MediaPlayer {   MediaAdapter mediaAdapter;    @Override   public void play(String audioType, String fileName) {              //播放 mp3 音乐文件的内置支持      if(audioType.equalsIgnoreCase("mp3")){         System.out.println("Playing mp3 file. Name: " + fileName);               }       //mediaAdapter 提供了播放其他文件格式的支持      else if(audioType.equalsIgnoreCase("vlc")          || audioType.equalsIgnoreCase("mp4")){         mediaAdapter = new MediaAdapter(audioType);         mediaAdapter.play(audioType, fileName);      }      else{         System.out.println("Invalid media. " + audioType + " format not supported");      }   }   }// 测试代码public class AdapterPatternDemo {   public static void main(String[] args) {      AudioPlayer audioPlayer = new AudioPlayer();      audioPlayer.play("mp3", "beyond the horizon.mp3");      audioPlayer.play("mp4", "alone.mp4");      audioPlayer.play("vlc", "far far away.vlc");      audioPlayer.play("avi", "mind me.avi");   }}

输出结果如下:

Playing mp3 file. Name: beyond the horizon.mp3Playing mp4 file. Name: alone.mp4Playing vlc file. Name: far far away.vlcInvalid media. avi format not supported

在这个示例中,适配器模式将一个不支持的音频格式转换成了支持的格式,并通过适配器的方式来实现播放。具体而言,AudioPlayer类作为客户端调用 MediaPlayer接口的 play方法。如果需要播放的音频格式是不支持的,AudioPlayer将会创建一个适配器对象,并通过该适配器对象来播放音频。

在适配器模式的示例中,有以下几个角色:

目标接口:MediaPlayer接口定义了 play方法,用于播放音频文件。被适配对象:VlcPlayerMp4Player类表示两种不兼容的音频格式,不能直接播放。适配器:MediaAdapter类实现了 MediaPlayer接口,同时包含一个被适配对象的引用。MediaAdapter类将不支持的音频格式转换成支持的格式,并通过被适配对象来实现播放。客户端:AudioPlayer类作为客户端,使用 MediaPlayer接口来播放音频文件。如果需要播放的音频格式不支持,AudioPlayer将会创建一个适配器对象,通过适配器来实现播放。

适配器模式的优点在于它可以将两个不兼容的接口进行连接,从而实现代码的复用和扩展性的提高。如果有新的音频格式需要支持,只需要实现一个新的适配器即可。

另外,适配器模式可以提高代码的可读性和可维护性。它可以将不相关的代码放在不同的类中,从而使代码更易于理解和维护。

标签:

设计模式-适配器模式示例-全球今亮点

在这个示例中,适配器模式将一个不支持的音频格式转换成了支持的格式,并通过适配器的方式来实现播放。具体

05-04 12:26:40

师徒之间的事,多的是你不知道的事-全球资讯

1、《师徒之间的事,多的是你不知道的事》是连载于话本小说的一部武侠仙侠类网络小说,作者是煜煜星语。本

05-04 12:01:24

海港球员阿布拉汗前往国奥报到:伤好了,可以来之即战啦!

直播吧5月4日讯5月3日晚,海港球员阿布拉汗在社媒晒出照片,他已经启程前往欧洲,与正在克罗地亚拉练的国奥

05-04 11:37:52

新研究在云层中发现耐药细菌 全球观察

加拿大拉瓦尔大学等机构一项新研究发现,云层中含有耐药细菌,这些细菌可以随着高空云层长距离传播。研究人

05-04 11:01:09

紫陶有什么优点和缺点_紫陶的优缺点介绍

解答:1、紫陶含铁丰富,不仅对人体有益,还具有传热快的优点。用建水紫陶制作的茶壶还具有保温性好的优点

05-04 10:44:44

新兴业务高速增长 信息通信业发展动力足 环球讯息

一季度,电信业务收入同比增长7 7%,互联网数据中心、云计算、物联网等新兴业务高速增长;截至3月底,我国

05-04 10:40:36

【财经分析】贝泰妮高增长不再 股价跌去六成后能否再出发? 全球视点

近期披露的2023年一季报显示,贝泰妮持续多年的业绩高速增长遇到瓶颈,出现明显下滑。若按单季度数据分析,

05-04 10:04:34

精测电子5月4日盘中跌幅达5%_天天热文

以下是精测电子在北京时间5月4日09:36分盘口异动快照:5月4日,精测电子盘中跌幅达5%,截至9点36分,报100

05-04 09:54:09

华利集团(300979)4月28日主力资金净卖出1571.54万元

截至2023年4月28日收盘,华利集团(300979)报收于44 14元,下跌4 91%,换手率3 33%,成交量4 87万手,成交额2 17亿元。

05-04 09:21:21

天天时讯:ChatGPT 标注指南来了!数据是关键

Datawhale干货作者:太子长琴,算法工程师,Datawhale成员前言ChatGPT刚刚出来时,业内人士一致认为高质量

05-04 08:46:59

心路|注重团队利益与员工个人利益相契合

【心路】注重团队利益与员工个人利益相契合(主题)读者来问您好,我是一名互联网公司的员工,之前因为家中

05-04 08:05:25

【世界播资讯】南粤集团简介_南粤集团

1、澳门南粤(集团)有限公司是广东省政府派驻澳门的经济贸易代表机构,是广东省各经济机构、进出口贸易公司

05-04 07:17:32

今日热搜:5月3日预计发送旅客5738万人次,环比增长9.5%

中新经纬5月3日电据交通运输部微信公众号3日消息,5月3日(劳动节假期第五天),全国铁路、公路、水路、民航

05-04 06:13:23

速看:anthology音译(anthology)

1、是的。2、高中英语二年级第一册中的。以上就是【anthology音译,anthology】相关内容。

05-04 04:48:42

即时焦点:张大叔从市场上买回一块矩形铁皮是什么 张大叔从市场上买回一块矩形铁皮

今天来聊聊关于张大叔从市场上买回一块矩形铁皮是什么,张大叔从市场上买回一块矩形铁皮的文章,现在就为大

05-04 02:16:38

重点聚焦!凌志软件一季度营收净利双增长

中证网讯(王珞)4月28日晚间,凌志软件发布2023年第一季度报告,营收和归母净利润稳步双增,实现了开年的良

05-03 23:58:59

对客户的新年感谢短信(十篇)-今日要闻

范文为教学中作为模范的文章,也常常用来指写作的模板。常常用于文秘写作的参考,也可以作为演讲材料编写前

05-03 21:56:56

一顿淄博烧烤带动十倍消费力 五一期间酒店、火车票等订单量创历史新高

2023年五一假期收官,去哪儿数据显示,2023年五一期间,纵使机票价格较疫情前增长三成以上,国内热门城市机

05-03 20:50:50

名贵宠物鸭散步被掳差点成“老鸭煲”,行拘!

上海一正在自家花园散步的宠物柯尔鸭,突然被陌生人一把抱走,差点被做成“老鸭煲”。民警在接报后1小时...

05-03 19:44:58

今日要闻!首次发现!百香果是果实蝇的“杀手”

5月1日,国际刊物《有害生物管理科学》封面文章刊发了我国科学家此项新发现。论文总责任作者、华南农业大学

05-03 18:42:12

快乐心心·捣捣的鬼主意

1、《快乐心心·捣捣的鬼主意》是2011年05月出版的图书。2、作者是冰波。本文到此分享完毕,希望对大家...

05-03 18:00:22

世界今日报丨港发展局指现未能就整个北部都会区发展计划开支作估算

由于北部都会区多个发展项目和交通基建设施仍在规划研究阶段,稍后亦需要就工程进行详细设计、确定立项优次

05-03 16:58:17

天天速读:全国大学生四六级_大学生创业点子

1、大学生创业的项目其实很多的,找一些有特色的产品来做,我记得模具好像是长。2、沙赢天,开发的,投入也

05-03 16:10:10

全球微资讯!人民网:防川景区人气旺 “醉”美珲春迎客来

被誉为“一眼望三国”的防川景区,有着特殊的边境地理位置,淳朴的朝鲜族民风民俗,是人们来珲春必去的...

05-03 15:25:17

环球热点评!第一共和银行被收购 美银行业危机警报仍难除

来源:看看新闻Knews美国第一共和银行被摩根大通收购后,摩根大通股价5月1日一度大涨约3%。不过,收购案也

05-03 14:10:30

全球观察:古特雷斯:联合国不会对阿富汗妇孺权益受攻击保持沉默

联合国秘书长古特雷斯5月2日表示,在妇女和女童权利像如今在阿富汗一样受到攻击时,联合国“永远不会保...

05-03 13:23:25

全球信息:美半导体协会总裁:中国是我们最大的市场,我们不能缺席

证券时报网讯,据彭博社3日报道,美国半导体行业协会称,尽管美国政府存在所谓“国家安全”方面的顾虑,...

05-03 12:20:56

天天新消息丨win8和win7哪个好用流畅(win8和win7哪个好)

自从xp系统没落后,现在市面上的两个主流系统是win7和win8。很多朋友在安装系统的时候都犯过错误,不知道选

05-03 11:21:37

华安证券给予中触媒买入评级,Q4业绩创单季新高,加码布局环保新材料 当前头条

华安证券05月03日发布研报称,给予中触媒(688267 SH,最新价:23 98元)买入评级。评级理由主要包括:1)

05-03 10:38:27

五一返程高峰要来了:峰值拥堵1.6倍于出程

5月3日,五一假期进入最后一天,外出旅游、回家探亲的纷纷集中返回,返程高峰也即将到来。五一假期,交通出

05-03 10:09:54

河南壮大县域富民产业|天天看点

河南壮大县域富民产业---去年我们打造的年产60万吨全谷物食品项目,流转10万亩土地,通过与70个农民合作社

05-03 09:18:55

美联储温和加息下楼市出现转暖迹象,低库存量对房价起有力支撑 微动态

业内人士表示,目前市场预期美联储将在2023年中停止升息,并在2023年底开启降息周期,届时房贷利率将大幅下

05-03 08:16:59

2022河北省市县区人均收入排行!保定不敌邯郸,唐山廊坊跑赢全国_全球微速讯

2022年河北省人均可支配收入达30867元,你拖后腿了吗?居民可支配收入,顾名思义,就是居民能够自由支配的

05-03 06:41:00

陕西铁路迎来返程客流高峰 天天热议

三秦都市报-三秦网讯(记者张毅伟)“五一”假期第四天,中国铁路西安局集团有限公司预计发送旅客58万人...

05-03 05:52:43

激光测距传感器的原理及应用_关于激光测距传感器的原理及应用介绍

1、激光在检测领域中的应用十分广泛,技术含量十分丰富,对社会生产和生活的影响也十分明显。2、激光测距是

05-03 02:55:30

全国五一劳动奖章获得者徐博海:处险不退缩 “人在阵地在!”-热头条

封面新闻记者赖芳杰人物名片★徐博海,男,国能大渡河大岗山发电有限公司运行维护处党支部书记、副主任兼运

05-02 23:03:49

延吉市东山小学校_全球焦点

1、延吉市政府和市教委,根据市东区朝鲜族学生上学距离太远的实际情况,从中央小学、新兴小学、师范附小分

05-02 21:48:03

逛市集、品美食 打卡意风区感受别样风情|热门看点

“五一”假期,海河附近的意风区也聚拢八方游客。游客们徜徉在意式建筑群中,逛市集、尝美食、看展览,...

05-02 20:39:09

甘孜县举行“甘孜的甘孜·最美月亮”推介会暨浙江台州“万人游”启动仪式

四川经济网甘孜讯(甘融记者杨琦)5月2日,以“甘孜的甘孜·最美月亮”为主题的推介会暨浙江台州“万人...

05-02 19:58:08

集度与小米,谁先撑不住?

事实上,不管小米能不能造好车,哪怕其首款产品到2024上半年才能量产上市,雷军能够在手机发布会的第二天就

05-02 18:50:29

环球速读:五一档第三日票房达3.55亿 《人生路不熟》夺日冠

截至5月1日,五一档第三日票房达3 55亿,档期累计票房突破10亿。《人生路不熟》单日票房1 32亿,超过《长空

05-02 17:37:34

苏文电能(300982):23Q1净利增128% 积极推进虚拟电厂/储能合作

苏文电能(300982):23Q1净利增128%积极推进虚拟电厂 储能合作

05-02 16:34:56

喃咕大连话啥意思 大连话段子|热点聚焦

今天来聊聊关于喃咕大连话啥意思,大连话段子的文章,现在就为大家来简单介绍下喃咕大连话啥意思,大连话段

05-02 15:11:47

全球时讯:陈杭:离职是想更好地拿起法律武器保护自身合法权利 对不实信息已经报警

5月2日电,针对有关事件,原浙商证券研究所所长助理陈杭表示“本人第一时间对谭珺的不实信息已经报警,...

05-02 14:21:09

dnf魔法暴击附魔宝珠大全_dnf魔法暴击宝珠|热点聚焦

1、炙炎之艾格丽丝、邪龙斯皮兹头部、虚空之弗曼、吟游诗人爱丽丝、邪龙斯皮兹和尤里斯宝珠都是加魔爆的,

05-02 13:08:36

《神仙道3》悟空打怪八戒解闷!细数那些趣味阵容_全球观天下

作者:@天书阁*内容源自玩家投稿,不代表官方立场和观点,所有伙伴资料及截图来源于内测,仅供参考,公测可

05-02 12:17:50

刚刚公布!这两家,销量“炸锅”

中国基金报记者文夕五一假期之中,各家新能源车企相继公布4月成绩单。多家新能源车企5月1日披露的数据显示

05-02 11:11:54

充电器怎么选性价比最高?看完让你五一旅游不怕电量焦虑

随着科技的发展,智能手机已经成为了我们出行旅游必备的工具。随之来的问题就是电量焦虑。希望以上的建议与

05-02 10:28:15

以小见大的作文400字五年级_以小见大的作文400字 天天微头条

1、一个星期天的早上,我的作业做完了,闲来无聊,便找弟弟一起玩电脑小游戏 一开始,他就认真地向我提出:...

05-02 09:51:51

阿波罗联合创始人:银行业动荡还未结束,更大危机将来自商业房地产市场; 当前头条

阿波罗联合创始人:银行业动荡还未结束,更大危机将来自商业房地产市场;阿波罗全球管理公司联合创始人马克

05-02 09:09:45

师徒之间的事,多的是你不知道的事-全球资讯
海港球员阿布拉汗前往国奥报到:伤好了,可以来之即战啦!
新研究在云层中发现耐药细菌 全球观察
紫陶有什么优点和缺点_紫陶的优缺点介绍
新兴业务高速增长 信息通信业发展动力足 环球讯息
【财经分析】贝泰妮高增长不再 股价跌去六成后能否再出发? 全球视点
精测电子5月4日盘中跌幅达5%_天天热文
华利集团(300979)4月28日主力资金净卖出1571.54万元
天天时讯:ChatGPT 标注指南来了!数据是关键
心路|注重团队利益与员工个人利益相契合
【世界播资讯】南粤集团简介_南粤集团
今日热搜:5月3日预计发送旅客5738万人次,环比增长9.5%
速看:anthology音译(anthology)
即时焦点:张大叔从市场上买回一块矩形铁皮是什么 张大叔从市场上买回一块矩形铁皮
重点聚焦!凌志软件一季度营收净利双增长
对客户的新年感谢短信(十篇)-今日要闻
一顿淄博烧烤带动十倍消费力 五一期间酒店、火车票等订单量创历史新高
名贵宠物鸭散步被掳差点成“老鸭煲”,行拘!
今日要闻!首次发现!百香果是果实蝇的“杀手”
快乐心心·捣捣的鬼主意
世界今日报丨港发展局指现未能就整个北部都会区发展计划开支作估算
天天速读:全国大学生四六级_大学生创业点子
全球微资讯!人民网:防川景区人气旺 “醉”美珲春迎客来
环球热点评!第一共和银行被收购 美银行业危机警报仍难除
全球观察:古特雷斯:联合国不会对阿富汗妇孺权益受攻击保持沉默
全球信息:美半导体协会总裁:中国是我们最大的市场,我们不能缺席
天天新消息丨win8和win7哪个好用流畅(win8和win7哪个好)
华安证券给予中触媒买入评级,Q4业绩创单季新高,加码布局环保新材料 当前头条
五一返程高峰要来了:峰值拥堵1.6倍于出程
河南壮大县域富民产业|天天看点
美联储温和加息下楼市出现转暖迹象,低库存量对房价起有力支撑 微动态
2022河北省市县区人均收入排行!保定不敌邯郸,唐山廊坊跑赢全国_全球微速讯
陕西铁路迎来返程客流高峰 天天热议
激光测距传感器的原理及应用_关于激光测距传感器的原理及应用介绍
全国五一劳动奖章获得者徐博海:处险不退缩 “人在阵地在!”-热头条
延吉市东山小学校_全球焦点
逛市集、品美食 打卡意风区感受别样风情|热门看点
甘孜县举行“甘孜的甘孜·最美月亮”推介会暨浙江台州“万人游”启动仪式
集度与小米,谁先撑不住?
环球速读:五一档第三日票房达3.55亿 《人生路不熟》夺日冠
苏文电能(300982):23Q1净利增128% 积极推进虚拟电厂/储能合作
喃咕大连话啥意思 大连话段子|热点聚焦
全球时讯:陈杭:离职是想更好地拿起法律武器保护自身合法权利 对不实信息已经报警
dnf魔法暴击附魔宝珠大全_dnf魔法暴击宝珠|热点聚焦
《神仙道3》悟空打怪八戒解闷!细数那些趣味阵容_全球观天下
刚刚公布!这两家,销量“炸锅”
充电器怎么选性价比最高?看完让你五一旅游不怕电量焦虑
以小见大的作文400字五年级_以小见大的作文400字 天天微头条
阿波罗联合创始人:银行业动荡还未结束,更大危机将来自商业房地产市场; 当前头条
申花燃气灶售后维修电话_申花油烟机-当前速读
X 广告
行业动态
X 广告

Copyright ©  2015-2022 南非植物网版权所有  备案号:沪ICP备2022005074号-13   联系邮箱:58 55 97 3@qq.com