设计模式之适配器模式
来源:互联网 发布:部落冲突弹跳药水数据 编辑:程序博客网 时间:2024/06/05 10:30
什么是适配器模式
在生活中我们经常会遇到接口不一致的场景,例如两个不同粗细的水管需要连接到一起,电器的工作电压和电线的电压不通.适配器模式将是一个类的接口转换成希望的另一个接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作.适配器分为两种:
- 类适配器
- 对象适配器:
适配器模式的特点
- 让功能得到更好的复用;
- 提高了扩展性.
如何使用适配器模式
类适配器
//已存在的但不符合我们要求的类public class OldAPI {public void Operation_1(){System.out.println("I am Operation_1");}}
//目标接口public interface TargetAPI {public void Operation_1();public void Operation_2();}
//适配器类,继承被适配的类同时实现目标功能接口public class Adapter extends OldAPI implements TargetAPI{@Overridepublic void Operation_2() {// TODO Auto-generated method stubSystem.out.println("I am Operation_2");}}
//测试类public class TestClassAdapter {public static void main(String[] args) {// TODO Auto-generated method stubTargetAPI api = new Adapter();api.Operation_1();api.Operation_2();}}
对象适配器
public class OldAPI {public void Operation_1(){System.out.println("I am Operation_1");}}
public interface Target {public void Operation_1();public void Operation_2();}
Adapter包装一个原类的实例
public class Adapter implements Target{public OldAPI old_api;public Adapter(OldAPI Old_API){this.old_api = Old_API;}@Overridepublic void Operation_1(){this.old_api.Operation_1();}@Overridepublic void Operation_2(){System.out.println("I am Operation_2");}}
public class testObjectAdapter {public static void main(String[] args) {// TODO Auto-generated method stubOldAPI oa = new OldAPI();Target adapter = new Adapter(oa);adapter.Operation_1();adapter.Operation_2();}}
1 0
- 设计模式之适配器
- 设计模式之适配器
- 设计模式之适配器
- 设计模式之适配器
- 设计模式 之 适配器
- 设计模式 之 适配器
- 设计模式之适配器
- 设计模式之适配器
- 设计模式之适配器
- 设计模式之适配器
- 设计模式之适配器
- 设计模式 之 适配器模式
- 设计模式之适配器模式
- 设计模式之适配器模式
- 设计模式之适配器模式
- 设计模式之适配器模式
- 设计模式之适配器模式
- 设计模式之--适配器模式.
- LVDS接口详解
- 2016SDAU编程练习三1013
- super init
- 数据库学习之旅——实验3(1)
- 最优三角剖分
- 设计模式之适配器模式
- 笔试题58. LeetCode OJ (45)
- JAVA线程-线程间通信
- Logger-功能强大使用方便的Log日志打印工具类
- 有序表查找(二分查找,插值查找,斐波那契查找)
- 前方有坑!独立移动开发者绕坑指南(iOS篇)
- windows服务编程--异常终止重启;拒绝手动停止
- M % (M + 1) = ???(dp+数学)(北理16校赛)
- SPS、PPS、IDR以及NALU编码规律