java設計模式之介面卡模式

2021-08-21 22:28:01 字數 1191 閱讀 2516

介面卡模式:將乙個類的介面轉換成客戶希望的另乙個介面。介面卡模式讓那些介面不相容的類可以一起工作。

介面卡就是一種適配中介軟體,它存在於不匹配的二者之間,用於連線二者,將不匹配變得匹配,簡單點理解就是平常所見的轉接頭,轉換器之類的存在。介面卡模式主要應用於希望復用一些現存的類,但是介面又與復用環境要求不一致的情況。

介面卡模式有兩種:類介面卡模式和物件介面卡模式及哦,其中物件介面卡模式更常用。

uml類圖

類介面卡模式:

//vga介面

inte***ce vga

//usb介面

inte***ce usb

//usb實現類usber

class usber implements usb

}//介面卡

class adapter1 extends usber implements vga

}public class test

}

通過介面卡,使vga介面變為usb介面。

物件介面卡模式:

//vga介面

inte***ce vga

//usb介面

inte***ce usb

//usb實現類usber

class usber implements usb

}//介面卡

class adapter1 implements vga

@override

public void showvga()

}public class test

}

通過組合的方式實現介面卡功能,在介面卡中定義私有變數usb,再定義乙個帶引數的構造器為物件usb賦值,再在vga介面的實現方法中使用usb物件呼叫usb介面的方法。

此外還有介面介面卡模式,適用於介面中有很多方法,而我們只想使用其中的乙個或幾個方法,如果我們直接實現介面,那麼我們要對所有的方法進行實現,哪怕我們僅僅是對不需要的方法進行置空(只寫一對大括號,不做具體方法實現)也會導致這個類變得臃腫,呼叫也不方便,這時我們可以使用乙個抽象類作為中介軟體,即介面卡,用這個抽象類實現介面,而在抽象類中所有的方法都進行置空,那麼我們在建立抽象類的繼承類,而且重寫我們需要使用的那幾個方法即可。

JAVA設計模式之介面卡模式

先總結一下整個過程的感想 感覺在網上找了很多資料,大部分大牛們把這個設計模式解釋的很仔細,但是用詞實在過於專業,很難讓初學者讀懂,自己找了乙個比較恰當的例子寫了一遍,對這個設計模式有了一定的認識,希望這種解釋可以得到認可。其實總結一下介面卡模式的最終目的 在乙個沒有實現某個介面的類,想在這個介面中規...

Java設計模式之介面卡模式

1 使用場景 介面卡模式把乙個類的介面變換成客戶端所期待的另一種介面。以消除由於介面的不匹配所造成類的相容性問題。介面卡模式主要有類的介面卡模式 物件的介面卡模式兩種。2 兩種介面卡模式介紹 模式所涉及的角色有 目標 target 角色 這就是所期待得到的介面。源 adapee 角色 現在需要適配的...

Java設計模式之介面卡模式

介面卡就是一種適配中介軟體,它存在於不匹配的二者之間,用於連線二者,將不匹配變得匹配,簡單點理解就是平常所見的轉接頭,轉換器之類的存在。介面卡模式有兩種 類介面卡和物件介面卡 二者在實現上有些許區別,作用一樣。1 類介面卡模式 原理 通過繼承來實現介面卡功能。當我們要訪問的介面a中沒有我們想要的方法...