複習:GoF的23種設計模式之adapter模式(結構型)

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());
    }
}

UML類圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章