1:什么是适配器模式ide
当客户须要一个A,但是厂家1没有A只有C,厂家2没有A只有D。这时候就须要一个适配的角色,将C、D客户须要的A。this
2:角色spa
目标角色:就是客户须要的Acode
适配角色:就是厂家1的C,厂家2的Dblog
适配器角色:就是将C、D转换成A接口
3:具体的代码class
adapter接口:客户须要的Aim
adpater1类:厂家的medC、medDdi
adapter实现类:适配器的角色,将厂家的medC、D装换成客户须要的Aco
adapter接口:
public interface Adapter { public String medA1(); public String medA2(); }
adpater1类
public class Adapter1 { public String medB(){ return "medB"; } public String medC(){ return "medC"; } }
adapter实现类
public class Adpater1Impl implements Adapter { private final Adapter1 adapter1; public Adpater1Impl(Adapter1 adapter1) { this.adapter1 = adapter1; } @Override public String medA1() { return "将B转换成A1:"+adapter1.medB(); } @Override public String medA2() { return "将C转换成A2:"+adapter1.medC(); } }
当出现多个厂家的时候,只须要建立多个Adpater2Impl、Adpater3Impl等等的实现类。将须要转换的地方直接转换便可。