当前位置: 首页 > wzjs >正文

网站模版免费下载seo经典案例分析

网站模版免费下载,seo经典案例分析,pycharm 做网站哪个好,做蛋糕哪个教程网站好1.适配器模式介绍适配器模式是一种结构型设计模式,它允许不兼容的接口协同工作。适配器模式的核心思想是将一个类的接口转换成客户期望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作。你可以将其想象成一个“转换插头”——假设你…

1.适配器模式介绍

适配器模式是一种结构型设计模式,它允许不兼容的接口协同工作。适配器模式的核心思想是将一个类的接口转换成客户期望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作。

你可以将其想象成一个“转换插头”——假设你有一个中国的电器插头,但你在欧洲旅行,需要将它插入欧洲的插座。适配器就是那个可以让中国插头插入欧洲插座的转换器。

在软件开发中,适配器模式通常用于整合一些旧的代码或第三方库,使它们能够与新的系统一起工作,而不需要修改它们的内部实现。适配器模式通过创建一个“适配器类”,这个类在内部转换接口,使得不兼容的接口可以顺利地互操作。

适配器模式通常包含以下几个角色:

  1. 目标接口(Target):这是客户期望的接口,目标可以是具体的或抽象的类。
  2. 适配者(Adaptee):这是需要适配的类,拥有客户希望使用的功能,但接口不兼容。
  3. 适配器(Adapter):通过在内部包装一个适配者对象,把适配者的接口转换为目标接口。

2. 代码演示

场景说明:我们创建一个媒体播放器MediaPlayer作为目标接口,一个老的媒体播放器OldMediaPlayer(接口及其实现)作为适配者,并且通过MediaAdapter 类实现了适配器,最终实现复用老媒体播放器功能。

目标接口:

public interface MediaPlayer {void play(String audioType, String fileName);
}

适配者:OldMediaPlayer及其实现类

//老媒体播放器,里面有希望使用的功能
public interface OldMediaPlayer {void playVlc(String fileName);void playMp4(String fileName);
}//map4播放器
public class Mp4Player implements OldMediaPlayer {@Overridepublic void playVlc(String fileName) {// Do nothing}@Overridepublic void playMp4(String fileName) {System.out.println("Playing mp4 file. Name: " + fileName);}
}//vlc播放器
public class VlcPlayer implements OldMediaPlayer {@Overridepublic void playVlc(String fileName) {System.out.println("Playing vlc file. Name: " + fileName);}@Overridepublic void playMp4(String fileName) {// Do nothing}
}

适配器:

//适配器:通过在内部包装一个适配者对象,把适配者的接口转换为目标接口
public class MediaAdapter implements MediaPlayer {//实现了 MediaPlayer 接口并使用 OldMediaPlayer 的实例OldMediaPlayer oldMediaPlayer;public MediaAdapter(String audioType){if(audioType.equalsIgnoreCase("vlc") ){oldMediaPlayer = new VlcPlayer();} else if (audioType.equalsIgnoreCase("mp4")){oldMediaPlayer = new Mp4Player();}}@Overridepublic void play(String audioType, String fileName) {if(audioType.equalsIgnoreCase("vlc")){oldMediaPlayer.playVlc(fileName);}else if(audioType.equalsIgnoreCase("mp4")){oldMediaPlayer.playMp4(fileName);}}
}

使用适配器

//使用适配器来播放不同格式的音频文件
public class AudioPlayer implements MediaPlayer {MediaAdapter mediaAdapter;@Overridepublic void play(String audioType, String fileName) {// Inbuilt support for mp3 music filesif(audioType.equalsIgnoreCase("mp3")){System.out.println("Playing mp3 file. Name: "+ fileName);}// MediaAdapter is providing support to play other file formatselse 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 Demo {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");}
}

上述例子中,MediaAdapter类充当了适配器的角色,通过实现 MediaPlayer 接口,并在内部调用 OldMediaPlayer 的 playXXX() 方法,实现了接口的兼容。这样,新的音频系统就可以使用旧的播放器来播放音乐,而不需要对旧的播放器进行任何修改。

http://www.dtcms.com/wzjs/186833.html

相关文章:

  • 武汉哪家网站建设公司好网站建设优化的技巧
  • 找室内设计师上哪个网站知乎推广渠道
  • 北京网站推广seo优化泰安网站建设
  • 建筑设计怎么学成都网站seo收费标准
  • 网站建设要用H5吗企业网络营销方案设计
  • 网站能找到做网站的人广东seo外包服务
  • 设计个人网站的步骤seo外链在线提交工具
  • 琼海做网站优化20条措施
  • 网站规划可以分成哪几步视频app推广
  • 网站域名更改后怎么做映射自创网站
  • 第一网站ppt模板免费下载武汉seo推广优化
  • 网页美工实例教程江门网站优化公司
  • 邯郸58同城网如何优化seo
  • 做网站累吗广州seo招聘信息
  • 济南建设集团有限公司seo网页优化公司
  • 可视化网页开发互联网seo是什么意思
  • 上海做网站公司哪家好seo短视频网页入口引流下载
  • 公司制作一个网站泉州seo代理计费
  • 黔江区建设委员会网站打不开seo网站有优化培训班吗
  • 建设网站的主要流程百度网盘客服中心电话
  • 网站界面设计实训的意义广州seo站内优化
  • 网站业务怎么做网站代运营多少钱一个月
  • 无锡网站建设优化公司seo优化教程视频
  • 华润置地建设事业部网站太原自动seo
  • 如何使用网站模板网店代运营一年的费用是多少
  • b2b商城网站方案电商运营培训哪个机构好
  • 长春做网站的公司有哪些网页设计与制作代码
  • 网站开发技术包括什么网络推广渠道都有哪些
  • 织梦体育网站模板优化电池充电什么意思
  • 模板做网站优缺点网站建设介绍ppt