适配器模式
适配器模式多用于接口之间的转化,比如家用三头插座,想插一个两头插头,怎么办,买一个三头转两头的转换器就可以了,这个三头转两头的转换器就是适配器
类图:
被适配者(三头)
public class Adaptee {
private String fireLine;
private String zeroLine;
private String groundLine;
public String getFireLine() {
System.out.println("使用了火线");
return fireLine;
}
public String getZeroLine() {
System.out.println("使用了零线");
return zeroLine;
}
public String getGroundLine() {
System.out.println("使用了地线");
return groundLine;
}
}
目标接口,即要使用的接口,也就是要适配成的接口
public interface Target {
public String getFireLine();
public String getZeroLine();
}
适配器,适配器最好使用组合方式,即持有被适配者,实现目标接口,然后调用被适配者的功能来组合成目标接口需要的行为
public class Adapter implements Target {
private Adaptee adaptee;
public Adapter(Adaptee sanTou) {
super();
this.adaptee = sanTou;
}
@Override
public String getFireLine() {
return adaptee.getFireLine();
}
@Override
public String getZeroLine() {
return adaptee.getZeroLine();
}
public static void main(String[] args) {
Target liangTou = new Adapter(new Adaptee());
liangTou.getFireLine();
liangTou.getZeroLine();
}
}