java设计模式之适配器模式
来源:互联网 发布:济南易途java培训骗局 编辑:程序博客网 时间:2024/06/11 05:45
使用场景:(例子说明)类A有一些功能,但是他需要一个xml读取模块才可以工作,然后这个模块需要实现XmlReader接口
<pre class="java" name="code">public interface XmlReader{ public InputSteam xmlReader(){ }}
这个时候,我们发现有一个类B已经有了xml读取这个功能,但是它实现了另一个接口ReaderXml
public interface ReaderXml{ public InputSteam readerXml(){ }}
我们不想重复再写这一个功能,所以我们需要借用B类中已经写好的功能,这时,我们的做法就是写一个适配器(类适配器)
public class Adapter implements XmlReader extends B{ public InputStream xmlReader(){ return readerXml(); }}
或者另一种实现方法(写法)(对象适配器)
public class Adapter implements XmlReader{ ReaderXml b = new B(); public InputStream xmlReader(){ return b.readerXml(); }}
适配器所涉及的角色包括:目标,客户,被适配者,适配器。
目标:定义客户端使用的特定接口(XmlReader接口)。
客户:使用了目标接口,同 和目标接口一致的对象合作 的类(A类)。
被适配者:一个需要匹配的接口(ReaderXml接口)。
适配器:负责将被 适配者接口 转换成 目标接口 的类(Adapter)。它是一个具体的类
第二个适配器例子:
public class Adaptee{ public void specialRequest(){ System.out.println("Called SpecificRequest() in Adaptee"); }}
<pre class="java" name="code">public class Client { //客户类public static void main(String[] args) {Target t = new Adapter();//客户类只和他需要实现的那个接口打交道即可t.request();}}public interface Target{public void request();}public class Adapter extends Adaptee implements Target{public void request(){this.specialRequest();}}
0 0
- java设计模式之适配器设计模式
- java设计模式之适配器设计模式
- JAVA设计模式之适配器
- 深入浅出Java设计模式之适配器模式
- 深入浅出Java设计模式之适配器模式
- Java设计模式之适配器模式
- 深入浅出Java设计模式之适配器模式
- Java设计模式之适配器模式
- java 设计模式之七-适配器模式
- java设计模式之适配器模式
- Java设计模式之适配器模式
- java设计模式之适配器模式
- Java:设计模式之适配器模式Adapter
- java设计模式之适配器模式
- java设计模式之适配器模式
- Java设计模式之适配器模式
- Java设计模式之适配器模式
- java与设计模式之适配器模式
- Storm实时计算:流操作入门编程实践
- 十道海量数据处理面试题
- 内存泄露与野指针
- spring进阶二
- 导出excel功能(解决大数据量问题)
- java设计模式之适配器模式
- 【移动前端开发实践】从无到有(统计、请求、MVC、模块化)H5开发须知
- flume-1.4.0整合hbase-0.98.0实战数据采集,同时将采集到的数据放入hbase和h
- iOS 获取手机设备IP地址的两种方法
- opencv2学习(1)
- Oracle 触发器语法及实例
- 有NSString的截取
- MPLS调试笔记二支持命令测试
- MFC中ListCtrl显示缩略图用法