设计模式之 适配器模式

原创 2016年05月31日 14:31:03

1.适配模式是很长常用的一种设计模式,简单,通俗易懂,下面举一个例子来引入概念:

例:俩接俩跟不同的水管,A水管很粗,B水管很细,现在如何将他们连接起来?在现实生活中焊接水管的师傅使用一个既能连接A水管又能连接B水管的水管,这样就能把AB连接起来了。这种解决方案,在设计模式中我们称之为“适配器模式”。连接AB水管的哪根水管我们称之为适配器(Adapter)


适配器模式概念:在软件设计中为了解决适配器接口不一致的问题,俩个模块之前往往需要引入一个适配器类Adapter进行适配.这样的设计模式称之为“适配器模式”。适配器模式分为俩种:“类适配器模式”和“对象适配器模式”。


下面是类适配器的uml图:


接口function里面有3个方法 要实现。模块Adaptee中只有实现了一个operation1方法。这个时候就需要添加第三方类Adapter,通过继承Adaptee 并且实现function接口,就可以解决这个问题。


现在有一个问题 就是模块中不止一个类。还有一个Adaptee1,Adaptee2 需要和接口对接,这个时候用类适配器无法完成,需要用对象适配器。对象适配器的uml如下:


adapter通过构造器 传入参数 Adaptee1的对象,和Adaptee2的对象为变量,Adaptee1,和变量Adaptee2赋值,这样在operation1(),和operation2里面直接调用Adaptee1.operation1(),Adaptee2.operation2(),着重需要重写operation3().


适配器模式很简单。往往用在俩个模块接口不一致的地方。




版权声明:本文为博主原创文章,未经博主允许不得转载。

Java设计模式----适配器模式

1. 适配器模式简介      适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。      ...
  • ymeng_bupt
  • ymeng_bupt
  • 2011年09月29日 12:42
  • 9477

23种设计模式(13):适配器模式

本文主要介绍设计模式中的适配器模式。
  • psp0001060
  • psp0001060
  • 2016年02月25日 16:21
  • 667

JAVA设计模式初探之适配器模式

1. 概述   将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。 2. 解决的问题   即Adapter模式使得原本由于接口不...
  • jason0539
  • jason0539
  • 2014年03月29日 07:53
  • 45807

JAVA设计模式之:适配器模式

适配器模式是把一个类的接口适配成用户所期待的,使得原本由于接口不兼容而不能一起工作的一些类可以在一起工作从而实现用户所期望的功能。 适配器模式的优势:通过适配器,客户端可以调用统一接口,操作简单直接...
  • true100
  • true100
  • 2015年12月16日 10:36
  • 1126

研磨设计模式之适配器模式(Adapter)-场景问题

4.1  场景问题 4.1.1  装配电脑的例子 1:旧的硬盘和电源 小李有一台老的台式电脑,硬盘实在是太小了,仅仅40GB,但是除了这个问题外,整机性能还不错,废弃不用太可惜了,于...
  • idwtwt
  • idwtwt
  • 2014年09月29日 15:53
  • 462

Java设计模式菜鸟系列(八)适配器模式建模与实现

适配器模式(Adapter):将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。 主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。 1...
  • JAVE_LOVER
  • JAVE_LOVER
  • 2014年10月05日 19:52
  • 2421

设计模式之接口型模式(一)----适配器模式

通过一个简单的例子说一下适配器模式,适配器模式属于接口型模式。适配器模式的意图在于,使用不同接口的类所提供的服务为客户端提供 它所期望的接口!!!        举个例子,日常生活中我们都要用水,...
  • liu136313
  • liu136313
  • 2015年08月22日 22:15
  • 1188

最常用的设计模式---适配器模式(C++实现)

sdfsfd
  • lh844386434
  • lh844386434
  • 2014年01月06日 22:24
  • 2086

设计模式之适配器模式代码示例

问题:用户家里现有一台洗衣机,使用交流电。现在用户想新购买一台录音机,录音机只能使用直流电。由于交流电公司只能供给用户家里的是交流电,因此,用户需要用适配器将交流电转化为直流电供录音机使用。   解析...
  • yurenjiemimi
  • yurenjiemimi
  • 2016年07月22日 22:03
  • 172

大话设计模式—适配器模式

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口...
  • lmb55
  • lmb55
  • 2016年03月29日 19:47
  • 1772
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:设计模式之 适配器模式
举报原因:
原因补充:

(最多只允许输入30个字)