适配器模式
来源:互联网 发布:小米wifi网络创建失败 编辑:程序博客网 时间:2024/06/03 04:20
什么是适配器模式?
试想下,你手上的IPhone充电线隔三差五的坏掉,但刚好有好几条耐用的Android通用USB线,这时候你可能会上淘宝买10块钱5个的Lightening转接头,插到普通USB线上来给IPhone继续充电,这就是显示生活中适配器的应用。(当然,这样可能会损坏IPhone)
另外一个常见的例子就是旅行充电转换器,适配器模式将电器插头转换成插座的规格,当然,最终也要电器本身与当地的供电电压符合才可以正常工作。
而在日常工作中,适配器模式用于将我们系统中对应的的功能接口适配成客户所需要的api。
一般适配模式的类图如下:
例子
现在来实现一个普通usb线转lightening的转换头。
- 这是普通Usb线:
public class UsbCable implements GenerateChargeCable{ @Override public void charge() { System.out.println("Charging..."); //do stuff }}
- 这是Lightening线的接口:
public interface Lightening { void chargeIphone();}
- 实现一个普通Usb转Lightening的接口:
public class UsbToLighteningAdapter implements Lightening { UsbCable mCable;//普通usb线实例 public UsbToLighteningAdapter(UsbCable cable) { System.out.println("Set adapter..."); mCable = cable; } @Override public void chargeIphone() { //充IPhone的时候用普通usb线的充电行为代替 System.out.println("Charging Iphone..."); mCable.charge(); }}
4.万事具备,现在使用转接头为IPhone充电:
public class Client { public static void main(String[] args) { //创建通用usb线的实例 UsbCable myCable = new UsbCable(); //创建一个adapter,将通用线转成Lightening接口 Lightening lighteningCable = new UsbToLighteningAdapter(myCable); //开始充电 lighteningCable.chargeIphone(); }}
输出:
Set adapter...Charging Iphone...Charging...
阅读全文
0 0
- 适配器及适配器模式
- 适配器及适配器模式
- 适配器模式(类适配器)
- 适配器模式(默认适配器)
- 适配器模式(对象适配器)
- 适配器模式-类适配器
- 适配器模式-对象适配器
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- HNUSTOJ 1604:Operations
- java中方法的重载与重写的区别
- ros 初始化和关闭 (ros::init(); ros::shutdown())
- element-ui 格式化时间
- mac安装pycharm
- 适配器模式
- 在qemu kvm虚拟机中挂载硬盘分区的方法总结
- LoadRunner脚本语言基础
- 阿里云 centos7.2下部署 LAMP (CentOS 7.2)
- java.io之InputStream与OutputStream
- 项目管理(PMP)挣值管理
- larave封装公共方法然后在控制器里调用
- leetcode--Unique Binary Search Trees II
- 多线程之 线程安全与非线程安全