Java设计模式
来源:互联网 发布:手机app编程自学 编辑:程序博客网 时间:2024/06/10 02:08
原文链接:https://www.w3cschool.cn/java/java-adapter-pattern.html
我们在现实生活中使用适配器很多。例如,我们使用存储卡适配器连接存储卡和计算机,因为计算机仅支持一种类型的存储卡,并且我们的卡与计算机不兼容。
适配器是两个不兼容实体之间的转换器。适配器模式是一种结构模式。
在Java设计模式中,适配器模式作为两个不兼容接口之间的桥梁。
通过使用适配器模式,我们可以统一两个不兼容的接口。
例子
首先我们创建一个播放器界面来播放任何时间的媒体文件。
MyPlayer是适配器,它统一了播放媒体文件的接口。
interface Player { public void play(String type, String fileName);}interface AudioPlayer { public void playAudio(String fileName);}interface VideoPlayer { public void playVideo(String fileName);}class MyAudioPlayer implements AudioPlayer { @Override public void playAudio(String fileName) { System.out.println("Playing. Name: "+ fileName); }}class MyVideoPlayer implements VideoPlayer { @Override public void playVideo(String fileName) { System.out.println("Playing. Name: "+ fileName); }}class MyPlayer implements Player { AudioPlayer audioPlayer = new MyAudioPlayer(); VideoPlayer videoPlayer = new MyVideoPlayer(); public MyPlayer(){ } @Override public void play(String audioType, String fileName) { if(audioType.equalsIgnoreCase("avi")){ videoPlayer.playVideo(fileName); }else if(audioType.equalsIgnoreCase("mp3")){ audioPlayer.playAudio(fileName); } }}public class Main{ public static void main(String[] args) { MyPlayer myPlayer = new MyPlayer(); myPlayer.play("mp3", "h.mp3"); myPlayer.play("avi", "me.avi"); }}
上面的代码生成以下结果。
阅读全文
0 0
- [Java] JAVA设计模式
- Java设计模式--Java设计模式介绍
- Java设计模式-模板设计
- java设计模式-----(设计原则)
- Java设计模式-设计原则
- java设计模式-观察者模式
- Java设计模式-----Singleton模式
- Java设计模式-----Command模式
- Java设计模式-----State模式
- Java设计模式-----Composite模式
- Java设计模式 -- 策略模式
- java设计模式-----策略模式
- java设计模式_Composite模式
- java 设计模式-策略模式
- java设计模式 访问者模式
- java设计模式-代理模式
- java设计模式----适配器模式
- Java 设计模式 --装饰模式
- 《Advanced Bash-scripting Guide》学习(十三):引用变量的两个例子
- Java字节码执行方式--解释执行和JIT
- 开启僵尸对象(Zombie Objects)来定位内存问题
- Java基础——POI导出Excel
- 记录一些平时查找资料发现的网站或者博客
- Java设计模式
- python-1-破解unix密码/etc/shadow
- python 拷贝
- RN调试的坑
- java-操作 Excel
- 一个简单的jquery图片轮播插件
- Snackbar简单使用及源码浅析
- Unity 读取 Excel 表格 配置 游戏 参数
- Windows编译出的Botan库运行起来崩溃问题的解决