首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Adapter形式

2012-08-25 
Adapter模式将一个类的接口转换成客户希望的另外一个接口,使原本由于接口不兼容而不能在一起工作的类可以

Adapter模式

将一个类的接口转换成客户希望的另外一个接口,使原本由于接口不兼容而不能在一起工作的类可以一起工作

Adaptee.java

package com.gary.designpattern.adapter;/** * 需要适配的目标 * @author gary * */public interface Adaptee {public void doSomethingSpecial();}

?

AdapteeImpl.java

package com.gary.designpattern.adapter.impl;import com.gary.designpattern.adapter.Adaptee;/** * 需要适配的类 * @author gary * */public class AdapteeImpl implements Adaptee{@Overridepublic void doSomethingSpecial(){System.out.println("do something special");}}

?

Target.java

package com.gary.designpattern.adapter;/** * 客户所期待的接口,也可以是类 * @author gary * */public interface Target {public void doSomething();}

?

TargetImpl.java

package com.gary.designpattern.adapter.impl;import com.gary.designpattern.adapter.Target;/** * 客户所期待的接口实现,也可以是类 * @author gary * */public class TargetImpl implements Target{@Overridepublic void doSomething(){System.out.println("do something");}}

?

Adapter.java

package com.gary.designpattern.adapter;import com.gary.designpattern.adapter.impl.AdapteeImpl;/** * 定义一个Adaptee对象,把原接口转换成目标接口 * @author gary * */public class Adapter implements Target{private Adaptee adaptee = new AdapteeImpl();@Overridepublic void doSomething(){adaptee.doSomethingSpecial();}}

?

Test.java

package com.gary.designpattern.adapter;public class Test {public static void main(String[] args) {Target target = new Adapter();target.doSomething();}}

?

1 楼 eric_shi 2011-02-11   lz 头像很可爱 文章很简言易懂

热点排行