此文章不讨论理论 单纯实现一下
大概的构思图,画的不知道对不对
这是影像数据输出接口(只输出数据啊 不负责显示!!!)
public interface IComputerOuputContent {
void toDisplayData();
}
适配器接口类(数据转换器接口类)
public interface IVideoAdapter {
void convertData();
}
输出数据接口实现类 电脑
一台电脑implements很多接口 比如各种输入接口(键盘输入接口 鼠标输入接口) 输出接口 (显示屏内容输出接口 音频输出接口)
当然我这里只实现了影像输出接口
public class Computer implements IComputerOuputContent {
@Override
public void toDisplayData() {
System.out.println("给显示器的数据");
}
}
适配器类 就是把电脑给的数据转化为图像的东东
因为Computer(电脑)里面的void toDisplayData()方法是实现了的 是真的有“给显示器的数据”的
Displayer(显示器)想显示却不能直接显示的内容
Displayer(显示器)无法直接调用Computer(电脑)的内容所以需要something帮忙转化数据(适配数据)
adapter(适配器) 应运而生 这个adapter是可以做很多事情的 但是我只实现了IVideoAdapter(影像数据适配(转换)功能) 当然你还可以implements别的功能
简单理解 Adapter继承Computer(电脑)的影像数据 实现给IVideoAdapter(数据转换器)
public class Adapter extends Computer implements IVideoAdapter{
/**
* 此处进行适配(数据转换)
*
* 改写适配器convertData接口 输出电脑的content显示内容
*/
@Override
public void convertData() {
/**
* 获取Computer给的数据
*/
this.toDisplayData();
//此处正在努力转换成显示器能接受的数据。。。。。。。
}
}
显示器类
public class Displayer {
private IVideoAdapter videoAdapter;
/**
* 给显示器加个影像数据适配(转换)器
* @param videoAdapter
*/
public void setVideoAdapter(IVideoAdapter videoAdapter) {
this.videoAdapter = videoAdapter;
}
/**
* 显示内容
*/
public void view() {
videoAdapter.convertData();
}
}
main方法测试一下
public class Main {
public static void main(String[] args) {
/**
* 实例化显示器
*/
Displayer displayer = new Displayer();
displayer.setVideoAdapter(new Adapter());
/**
* 把数据转换器接入显示器
* 显示器显示内容
*/
displayer.view();
}
}
输出内容

懒得敲代码的人可以到这里下载
[https://download.youkuaiyun.com/download/Mo_0214/12536851]
纯属个人理解 如果有啥不正确的希望理解并留言告诉我 谢谢
适配器模式在影像数据转换的应用

本文介绍了一种使用适配器模式将电脑输出的影像数据转换为显示器可识别格式的方法。通过定义适配器接口和实现类,解决了不同设备间数据格式不匹配的问题。
1665

被折叠的 条评论
为什么被折叠?



