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{ @Override public 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{ @Override public 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(); @Override public 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 头像很可爱 文章很简言易懂