1. 程式人生 > >介面卡模式 和 裝飾模式 個人的理解筆記

介面卡模式 和 裝飾模式 個人的理解筆記

介面卡模式:

interface Target{

public void request();

}

class Adapter1{

    public void specificRequest(){

system.out.println(" 這個是個特殊方法,要被包裝起來“);

}

}

1、物件介面卡

class Adapter implements Target{

private  Adapter1 adapter1;

public Adapter(Adapter1  adapter1){

this.adapter1 = adapter1;

public void request(){

this.adapter1.specificRequest();  //   這裡是是用委託的方式完成特殊功能。

}

}

}

2、類介面卡

class Adapter extends Adapter1 implements Target{

public void request(){

super.specificRequest();

}

}

裝飾模式:

裝飾模式和介面卡模式的類比:

從定義上看裝飾模式是對核心物件或者功能的擴充套件,介面卡模式是把物件或者功能放到一個新物件中引用。舉個例子,現在書城賣道德經的書,有線裝版,有精裝版,有日文版,有英文版,其中線裝版和精裝版就是裝飾模式,日文版和英文版就是介面卡模式,各種版本都是為迎合不同消費者的不同需求。為什麼呢?因為線裝版和精裝版的道德經雖然包裝不同,但內容相同,日文版和英文版就不同,這兩個版本的內容就可能和原版的不同,文化差異嘛,翻譯的內容雖來自道德經,但根據不同國家的文化,思維邏輯什麼的就可能改變一些想法。