Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1469408
  • 博文数量: 218
  • 博客积分: 6394
  • 博客等级: 准将
  • 技术积分: 2563
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-08 15:33
个人简介

持之以恒

文章分类

全部博文(218)

文章存档

2013年(8)

2012年(2)

2011年(21)

2010年(55)

2009年(116)

2008年(16)

分类: 项目管理

2009-06-10 13:21:35

Adapter模式:关键的特征

意图:将一个无法控制的现有的对象与一个特定的接口相匹配

问题:一个系统拥有正确的数据和行为,但是他的接口是错误的。典型的用途:你必须把某些东西(上面所说的一种情况)实现为我们定义或者拥有抽象类的派生类。

解决方案:Adapter模式用我们需要的接口对无法修改的类进行包装

参与者与协作者:

AdapterAdaptee的接口进行相应的适配,使它与Target(Adapter派生与他)相匹配。让ClientAdaptee当做Target的一个类型进行使用

效果:Adapter让现存的对象适应新的类的结构,而不受他们的接口的限制

实现:将现存的类的对象包含在另一个类中。包容类与需要的接口进行适配,调用被包容类的方法。


接口的转换:使原有的由于接口不兼容而不能一起工作的那些类一起工作。

使客户对象不必知道相应的细节,可以使用别人的程序

对于一类问题:使用一种共通的方式和其打交道――抽象类,抽象类定义相关的接口,实现在派生类中实现

Adapter模式最通用的用途是保持其他模式需要的多态,用Adapter模式将现存的类和他适当的抽象类进行适配

注意部分适配的问题

Façade模式简化接口,而Adapter模式将接口转化成另外一个现有的接口

阅读(637) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~