适配器模式用于消除接口不匹配造成的类兼容性问题

类模式的适配器采用继承的方式复用接口

对象模式的适配器采用组合的方式复用

适配器模式-对象模式

新建适配器,接受原类对象的所有方法,然后生成新需要的接口方法

  • 原类对象
/*** 原类*/
public class Target {/*** 一种逻辑(算法)* @param str* @return*/public String Arithmetic(String str) {return str;}
}
  • 适配接口
/*** 适配接口*/
public interface IAdapter {/*** 适配逻辑(算法)* @param str* @return*/String Arithmetic_Another(String str);
}
  • 适配器
public class Adapter implements IAdapter {Target tar;public Adapter(Target filter) {this.tar = filter;}/*** 原逻辑tar** @param str* @return*/public String Arithmetic(String str) {return "原逻辑" + this.tar.Arithmetic(str);}/*** 适配逻辑** @param str* @return*/public String Arithmetic_Another(String str) {return "适配逻辑";}
}
  • 测试
    public static void main(String[] args){Target t = new Target();IAdapter ia = new Adapter(t);System.out.println(((Adapter) ia).Arithmetic("……"));System.out.println(ia.Arithmetic_Another(""));}
适配器模式-类模式

通过创建类继承类和实现接口来实现适配

  • 原类对象
/*** 原类*/
public class Target {/*** 一种逻辑(算法)* @param str* @return*/public String Arithmetic(String str) {return str;}
}
  • 适配接口
/*** 适配接口*/
public interface IAdapter {/*** 适配逻辑(算法)* @param str* @return*/public String Arithmetic_Another(String str);public String Arithmetic(String str);
}
  • 适配器
public class Adapter extends Target implements IAdapter {/*** 适配逻辑** @param str* @return*/public String Arithmetic_Another(String str) {return "适配逻辑";}
}
  • 测试
    public static void main(String[] args){IAdapter ia = new Adapter();System.out.println(ia.Arithmetic("原逻辑……"));System.out.println(ia.Arithmetic_Another(""));}

Java 适配器模式相关推荐

  1. java什么是适配器类?作用是什么?_浅谈Java适配器模式

    假期刚结束不久,也没什么好写的,今天就水下文章,讲讲设计模式对开发时的影响,做开发到现在,感觉设计模式对开发的影响还是挺大的. 这次就简单谈谈适配器模式.可能适配器模式感觉比较鸡肋,但是用到的地方还挺 ...

  2. java 适配器模式示例

    java 适配器模式示例 一.定义 ​ 适配器模式用于解决接口间的兼容问题. ​ 当我们需要使用某个类提供的接口,但是这个接口与现在的系统需求不符,由于该接口是由第三方提供的,或者是已经在生产上跑了很 ...

  3. java适配器模式_适配器模式的设计,你get到了吗?

    作者:rabbitwfly 假如我们又这样软件系统,我们希望它能够和一个新的库搭配使用,但是这个库所提供的接口与我们的软件系统不兼容,我们不想改变现有代码就能解决这个问题,怎么办?这个时候我们就需要将 ...

  4. java适配器模式例子_java适配器模式实例解析

    适配器模式作为一种结构型设计模式,在软件系统设计开发中使用到的频率非常之高,深受开发人员的青睐.本文会讲解适配器模式的知识要点,以及在实际项目中所使用的真实案例. 1.适配器模式概述: 适配器模式(A ...

  5. Java适配器模式详解

    文章目录 设计模式分类 适配器模式 `实例:` 小结 编程之外 设计模式分类 设计模式分为三种类型,共23种:这里先暂时只分享适配器模式的学习 创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式 ...

  6. 浅谈JAVA适配器模式

    最近辞职在家,有空写写博客.当然本人也会时不时的发疯在开头写一些有的没的,别介意. 当把最爱的那个人放手时,所有的东西也就释怀了. JAVA适配器的由来:基于类只能继承一个父类.却可以实现多个接口的限 ...

  7. Java适配器模式详解和实际应用

    一.了解适配器模式 1.什么是适配器模式 适配器模式将一个类的接口转换成另一种接口,让原本接口不兼容的类可以兼容.这种模式的主要作用就是把原本不兼容的接口,通过适配修改做到统一. 这个模式可以通过创建 ...

  8. Java适配器模式(adapter)

    文章目录 适配器模式 什么是适配器模式 模式中的角色 适配器的实现方式 1.类适配器方式 2.对象适配器方式 工作中的场景   本文介绍下java设计模式中的适配器模式 适配器模式 什么是适配器模式 ...

  9. java适配器模式火鸡变凤凰是,结合案例深入解析适配器模式(一)

    一.基本概念 将一个类的接口,转换成客户期望的另一个接口.适配器让原本接口不兼容的类可以合作无间. 可以将适配器理解为我们日常用的电脑充电器: 家庭电压为220V,而电脑充电频率是20V左右,所以需要 ...

  10. java适配器模式 场景_Java设计模式之《适配器模式》及应用场景

    适配器就是一种适配中间件,它存在于不匹配的二者之间,用于连接二者,将不匹配变得匹配,简单点理解就是平常所见的转接头,转换器之类的存在. 适配器模式有两种:类适配器.对象适配器.接口适配器 前二者在实现 ...

最新文章

  1. 通过进程ID得到进程名
  2. LeetCode Search a 2D Matrix II
  3. ajax 加载partial view ,并且 附加validate验证
  4. java 中组合与复用_可复用性和组合
  5. Java学习--多态
  6. linux es连接mysql_Linux下ES,kibana,mysql,kafka,zookeeper启动关闭方式
  7. gc日志一般关注什么_JVM(23)JVM的Full GC日志
  8. 深度学习2.0-9.tensorflow的高阶操作之填充与复制
  9. 2013-06-18
  10. HTML 4.0 语 法 教 学
  11. GIS基础软件及操作(十二)
  12. 读《菜鸟学习***必看,不看别后悔》有感
  13. apache服务上配置https安全与域名请求
  14. 分区助手克隆linux,PartAssist 9.1+7.0 AOMEI 分区助手 免安装版 (简/繁/英 PE/Win 通用)...
  15. 计算机原理 做实验报告,微机原理实验报告心得体会
  16. SHH could not initialize proxy - the owning Session was closed 和延迟加载问题
  17. 植物2 IOS 怎么实名认证_植物大战僵尸2未来世界22天困难怎么过关 植物阵容推荐...
  18. 积木报表画布显示不了
  19. chmod +x 与chmod +777的区别
  20. 这些网络故障的处理手段,你都试过了吗

热门文章

  1. 关于按照Intellij IDEA开发WebService步骤时输入http://localhost:8080/services出现404错误的解决方案
  2. 信息学奥赛初赛题目讲解3
  3. 使用Beaglebone Black的PRU(二)——Hello World!
  4. RabbitMQ学习笔记和AMQP协议浅析
  5. CMS漏洞复现小结--沙窝李的王
  6. 关于Vue使用ueditor富文本编辑器上传图片
  7. 一张图让你了解软件开发流程
  8. iOS一行代码让你的应用中UIScrollView的滑动与侧滑返回并存
  9. 谈下这几天sybase数据库获取行号遇到的坑
  10. java生成html 控制编码方式_JAVA中文字符编码问题详解 控制台输出