adapter模式(適配器模式)
什麼是適配器模式呢?? 我先講一個小小的生活常識吧,我們現在的家用電源是交流電220V的,電子元件大都是使用直流電的,就好比筆記本電腦,電源線上加有一個大大的適配器。此適配器的作用:將220V的交流電(被適配)轉換(適配器)爲24V的直流電(需求)。
在設計模式中,適配器模式,是將一個類的接口轉換成用戶所需要的,使得兩個不同接口的類能再次一起工作。有兩類適配器:
第一類:類適配器,需求方只是接口,使用適配器 繼承 被適配類。
第二類:對象適配器,需求方也是類,使用 適配器 委託\依賴 被適配類。
示例代碼 (類適配器,轉換器繼承被轉換對象)
class AcPowerAdaptee{ //被適配 可以是穩定現成代碼、新版本代碼
public String getAc() {
return "220V交流電";
}
}
interface DcPowerDemand{ //需求方 想使用老代碼、 版本兼容
public String getDc();
}
class powerAdapter extends AcPowerAdaptee implements DcPowerDemand { //轉換器
public String getDc() {
return getAc()+"將被轉換成12V直流電";
}
}
public class AdapterTest { //調用者
public static void main(String[] args) {
DcPowerDemand demand = new powerAdapter();
System.out.println(demand.getDc());
}
}