Java设计模式之适配器模式
来源:互联网 发布:红米1s支持4g网络吗 编辑:程序博客网 时间:2024/05/21 11:31
模式介绍
适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。
应用场景
生活中存在很多使用适配器模式的例子,例如国内电压是220V,国外是110V,所以去国外要买一个电压转换器,还有安卓数据线是大口的,苹果数据线是小口的,但是可以用一个转换头也能让安卓数据线给苹果手机充电。
例子说明
下面写个关于安卓数据线和苹果数据线的demo来实现适配器模式。
uml图
数据线大口
/** * 大口 * @author S * */public interface BigPort { public String useBigPort();}
数据线小口
/** * 小口 * @author S * */public interface SmallPort { public String useSmallPort();}
Android数据线
/** * Android数据线 * @author S * */public class AndroidUsbLine implements BigPort{ @Override public String useBigPort() { // TODO Auto-generated method stub return "Android数据线"; }}
苹果数据线
/** * 苹果数据线 * @author S * */public class IphoneUsbLine implements SmallPort{ @Override public String useSmallPort() { // TODO Auto-generated method stub return "苹果数据线"; }}
转换器
/** * 转换器 * @author S * */public class UsbAdapter implements SmallPort{ private BigPort port; public UsbAdapter(BigPort port){ this.port = port; } @Override public String useSmallPort() { // TODO Auto-generated method stub return port.useBigPort(); }}
Android手机
/** * android手机 */public class Android { /** * 充电 * @param port */ public void charge(BigPort port){ System.out.println("Android手机使用"+port.useBigPort()+"充电"); }}
苹果手机
/** * 苹果手机 */public class Iphone { /** * 充电 * @param port */ public void charge(SmallPort port){ System.out.println("苹果手机使用"+port.useSmallPort()+"充电"); }}
测试
/** * 适配器模式 * @author S * */public class Main { public static void main(String args[]){ //安卓手机充电 AndroidUsbLine line1 = new AndroidUsbLine(); Android android = new Android(); android.charge(line1); //苹果手机充电 IphoneUsbLine line2 = new IphoneUsbLine(); Iphone iphone = new Iphone(); iphone.charge(line2); SmallPort line3 = new UsbAdapter(line1); iphone.charge(line3); }}
打印结果
Android手机使用Android数据线充电苹果手机使用苹果数据线充电苹果手机使用Android数据线充电
阅读全文
0 0
- java设计模式之适配器设计模式
- java设计模式之适配器设计模式
- JAVA设计模式之适配器
- 深入浅出Java设计模式之适配器模式
- 深入浅出Java设计模式之适配器模式
- Java设计模式之适配器模式
- 深入浅出Java设计模式之适配器模式
- Java设计模式之适配器模式
- java 设计模式之七-适配器模式
- java设计模式之适配器模式
- Java设计模式之适配器模式
- java设计模式之适配器模式
- Java:设计模式之适配器模式Adapter
- java设计模式之适配器模式
- java设计模式之适配器模式
- Java设计模式之适配器模式
- Java设计模式之适配器模式
- java与设计模式之适配器模式
- 工厂模式
- 微服务架构二三事:总论
- [BZOJ2815][ZJOI2012]灾难-灭绝树
- Web应用程序状态管理
- tomcat查看内存使用情况
- Java设计模式之适配器模式
- 导航栏返回到指定的视图控制器
- 链表的定义以及实现
- http、TCP/IP协议与socket之间的区别
- Eclipse_SVN文件冲突、标记为合并
- Kubernetes基于ovs构建docker集群
- 普及认识:一种实现人工智能程序自进化的概念原理
- (10)2017.8.9-面向对象(5)
- 小知识