JAVA设计模式:适配器(Adapter)

来源:互联网 发布:阿里云短信接口 asp 编辑:程序博客网 时间:2024/05/22 03:43
     适配器把一个类的接口变换成客户端所期待的另外一种接口,使得原本由于接口不兼容而不能再一起工作的那些类可以一起工作。

 

      适配器模式是一个比较简单且容易理解的模式,举个例子来说,我家老房子旧的电源插座都是两口的,现在我买了一台新的电视机,电源插头是三口的,很明显,不作处理的话这两样东西是没法放在一起使用的。好在我买到了一个两口转三口的电源转换器,有了这个东西,问题很容易的解决了。

 

      在我们开发者的世界里,类似于上面电源插座的问题也经常发生着,比如老旧的程序接口与新开发的程序接口不同,但重新设计的成本又太高,我们只能想办法让两者继续工作。又如不同厂商甚至同一厂商开发的不同的产品接口也不同,但为了节省成本,我们只能再重新设计少量的代码来使用这些相互不兼容的接口。

 

      为了让遵循不同接口的组件在一起工作,我们引入了适配器,就象上面提到的电源转换器一样。这里一共涉及到三个角色,一个是适配器角色,另外两个分别是新的接口(Target)和被适配的对象(Adaptee), 还拿上面电源插座的例子来说,Target是三口的电源插头,Adatptee就是旧的两口插座了。

 

      关于适配器的实现有两种常用的方法,一种是基于基于静态的类继承的方式来实现适配,另一种方式是使用组合的方式(详细内容请参阅《JAVA设计模式:组合(Composite)》)在运行时动态实现对象的适配。

 

      阅读全文


      更多JAVA设计模式

      更多精彩原创文章请关注笔者的原创博客:http://www.coolfancy.com

原创粉丝点击