设计模式--适配器模式
来源:互联网 发布:淘宝直通车充值记录 编辑:程序博客网 时间:2024/06/05 05:18
适配器模式(Adapter)适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。主要分为三类:类的适配器模式、对象的适配器模式、
接口的适配器模式。首先,我们来看看类的适配器模式, 核心思想就是:有一个Source类,拥有一个方法,待适配,目标接口时Targetable,通过Adapter类,将Source的功
能扩展到Targetable里。
代码:
public class Source {public void method1(){System.out.print("this is original method!");}}public interface Targetable { public void method1(); public void method2();}public class Adapter extends Source implements Targetable {@Overridepublic void method2() {// TODO Auto-generated method stubSystem.out.print("this is the targetable method!");}}public class AdapterTest {public static void main(String[] args) {// TODO Auto-generated method stub Targetable target=new Adapter(); target.method1(); target.method2();}}输出:this is original method!this is the targetable method!这样Targetable接口的实现类就具有了Source类的功能。对象的适配器模式基本思路和类的适配器模式相同,只是将Adapter类作修改,这次不继承Source类,而是持有Source
类的实例,以达到解决兼容性的问题。我们修改Adapter类的源码:
public class Wrapper implements Targetable { private Source source; public Wrapper(Source source){ super(); this.source = source; } @Override public void method2() { System.out.println("this is the targetable method!"); } @Override public void method1() { source.method1(); } } 测试类:public class AdapterTest { public static void main(String[] args) { Source source = new Source(); Targetable target = new Wrapper(source); target.method1(); target.method2(); } } 输出:this is original method!this is the targetable method!
0 0
- 设计模式:适配器模式
- 设计模式------适配器模式
- 设计模式:适配器模式
- 设计模式---适配器模式
- 设计模式 适配器模式
- 设计模式 - 适配器模式
- 设计模式--适配器模式
- 设计模式-适配器模式
- 设计模式------适配器模式
- 设计模式---适配器模式
- 设计模式- 适配器模式
- 设计模式 - 适配器模式
- 设计模式:适配器模式
- 适配器模式--设计模式
- 设计模式 - 适配器模式
- 设计模式-适配器模式
- 设计模式---适配器模式
- 设计模式-适配器模式
- iTunes U 是个好东西,可以看很多教程
- 原生ajax异步请求和跨域请求实例
- js闭包
- 神经网络白话
- F
- 设计模式--适配器模式
- android studio 快捷键
- 青蛙过河
- 直方图均衡
- 游乐场 ssl1776 双连通分量
- Redis常用命令
- SpringMVC学习:一、基础概念
- UART基础知识
- GM、VP、FVP、CIO都是什么职位?