Java 设计模式 Adapter 类适配器 模式

Adapter模式用于现有的程序无法直接使用,需要做适当的变换之后才能使用的情况。

涉及到的角色

  • Target对象:定义所需的方法。
  • Client请求者:使用Target对象所定义的方法。
  • Adaptee被适配:是一个持有既定方法的角色。
  • Adapter适配:使用Adaptee角色来满足Target角色。
/*** Target 对象* @author 托马斯小火车喷雾又喷烟**/
public interface Shop {/*** 售卖热饮*/public abstract void sellHotDrink();/*** 售卖冷饮*/public abstract void sellColdDrink();}
/*** Adaptee 被适配* @author 托马斯小火车喷雾又喷烟**/
public class Drinks {public void cellCoffee() {System.out.println("售卖咖啡!");}public void cellCola() {System.out.println("售卖可乐!");}}
/*** Adapter 适配* @author 托马斯小火车喷雾又喷烟**/
public class ShopDrinks extends Drinks implements Shop {@Overridepublic void sellHotDrink() {cellCoffee();}@Overridepublic void sellColdDrink() {cellCola();}}
/*** Client 请求者* @author 托马斯小火车喷雾又喷烟**/
public class Main {public static void main(String[] args) {Shop shop = new ShopDrinks();shop.sellHotDrink();shop.sellColdDrink();}}

Java 设计模式 Adapter 类适配器 模式相关推荐

  1. Java 设计模式 Adapter 对象适配器 模式

    Java 设计模式 Adapter 对象适配器 模式 Adapter模式用于现有的程序无法直接使用,需要做适当的变换之后才能使用的情况. 涉及到的角色 Target对象:定义所需的方法. Client ...

  2. 适配接口 java_【Java 设计模式】接口型模式--Adapter(适配器)模式

    简介:[Java设计模式]接口型模式–Adapter(适配器)模式Adapter模式的宗旨就是:向客户提供接口,并使用现有的类所提供的服务,以满足客户的需求. 或者说,现在有classA的方法满足客户 ...

  3. Java设计模式之中介者模式(UML类图分析+代码详解)

    大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...

  4. Java设计模式之享元模式(UML类图分析+代码详解)

    大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...

  5. Java设计模式(装饰者模式-组合模式-外观模式-享元模式)

    Java设计模式Ⅳ 1.装饰者模式 1.1 装饰者模式概述 1.2 代码理解 2.组合模式 2.1 组合模式概述 2.2 代码理解 3.外观模式 3.1 外观模式概述 3.2 代码理解 4.享元模式 ...

  6. java设计模式4--建造者模式(Builder)

    本文地址:http://www.cnblogs.com/archimedes/p/java-builder-pattern.html,转载请注明源地址. 建造者模式 将一个复杂对象的构建与它的表示分离 ...

  7. java设计模式2-观察者模式

    java设计模式2-观察者模式 什么是观察者模式? 何谓观察者模式?观察者模式定义了对象之间的一对多依赖关系,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并且自动更新. 在这里,发生改变 ...

  8. java设计模式3种工厂模式

    java设计模式3种工厂模式 2010-01-08 16:06:36|  分类: JAVA技术|举报|字号 订阅 下载LOFTER客户端 工厂模式分为三种: Simple Factory模式 专门定义 ...

  9. Java设计模式之简单工厂模式(Simple Factory)

    [Java与模式]简单工厂模式(Simple Factory---吴义) 首先说明,Java与模式一系列的文章均是参考阎宏博士的<Java与模式>一书,加上自身的一些体会的探索,产生如下文 ...

  10. Java设计模式10,建造者模式

    目录 一.建造者模式 二.建造者模式的结构 1.抽象建造者(Builder) 2.具体建造者(ConcreteBuilder) 3.指挥者(Director) 4.产品(Product) 三.建造者模 ...

最新文章

  1. 分享一下字符串匹配BM算法学习心得。
  2. python接口服务两种方式(被调用、主动推送)
  3. Windows+VS2015编译caffe+py-faster-rcnn
  4. 深圳多管齐下破解“融资难”
  5. 编译选项—微软官方+各地总结
  6. oracle 9.2.0.2,在RedHat enterprise server 3 安装oracle9i 2.0.0.1 并升级到9.2.0.6
  7. HTML5标签用法及描述
  8. ZeroMQ实例-使用ZMQ(ZeroMQ)进行局域网内网络通信
  9. python38环境变量的配置_Windows下python环境变量配置
  10. 研究生马上要毕业了,可是完全写不出论文,该退学吗?
  11. 王庆的边缘计算(第四章)
  12. 《管理的实践》全书结构
  13. macos复制粘贴快捷键 快速_Mac复制粘贴快捷键怎么修改 Mac复制粘贴快捷键修改步骤...
  14. 华为的人力资源管理揭秘
  15. Unity 插件 Dynamic Shadow Projector 软阴影的使用
  16. 【目标检测】YOLOv3:An Incremental Improvement
  17. R语言使用lmPerm包应用于线性模型的置换方法(置换检验、permutation tests)、使用lm模型构建多元线性回归模型、使用lmp函数生成置换检验多元线性回归模型
  18. 轻量迅捷时代,Vite 与Webpack 谁赢谁输
  19. vs2015+qt5生成ts文件与多语言
  20. 怎么学会查看建筑图纸?dwg建筑图怎么打开?

热门文章

  1. 2016版excel_【重磅分享】最完整EXCEL教程,视频+PPT下载
  2. 【C语言视频教程完整版】从入门到进阶,适合C语言初学者计算机考研党考计算机二级大一大二学生学习观看~~~
  3. DBeaver数据库连接工具的简单操作
  4. 机器视觉算法(系列一)--机器视觉简短入门
  5. C语言课程设计:课程管理系统
  6. 刺激战场测试fps软件,绝地求生刺激战场通过GLTools实时显示游戏帧数方法
  7. 北京交通大学离散数学 谓词逻辑_【精选】离散数学习题解答-第3章谓词逻辑.pdf...
  8. NumPy常用中文手册
  9. Java光影教程_Minecraft SEUS PTGI 光影使用教程
  10. Windows下Cmake安装步骤详解(图文)