將乙個介面轉換成客戶期望的另乙個介面。介面卡讓原本介面不相容的類可以合作無間。
1.源介面。
2.適配目的介面。
3.適配結構體。
人類能說話,動物也能發聲叫,人類能學動物叫,需要乙個轉換器把人類的叫聲轉換為動物的叫聲。
//適配目的介面
type animalsound inte***ce
//源結構體
type peoplespeak sturct
func(s *peoplespeak)speak()
type dog struct{}
func(a *dog)sound()
//轉換器,把人類的叫聲轉換為動物的叫聲
type peoplespeakadapter struct
fun (s *peoplespeakadapter)sound()
func sound(as animalsound)
func main()}
sound(psa)
}
介面卡模式即將一種結構體型別(或介面)轉換為另外一種結構體型別(或介面)。 Golang設計模式 介面卡模式
介面卡模式包含如下角色 target 目標抽象類 adapter 介面卡類 adaptee 適配者類 client 客戶類 物件介面卡 類介面卡 在以下情況下可以使用介面卡模式 系統需要使用現有的類,而這些類的介面不符合系統的需要。想要建立乙個可以重複使用的類,用於與一些彼此之間沒有太大關聯的一些類...
設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...
設計模式之介面卡模式(類介面卡模式)
介面卡模式,即定義乙個包裝類,用於包裝不相容介面的物件 包裝類 介面卡adapter 被包裝物件 適配者adaptee 被適配的類 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本介面不匹配而無法一起工作的兩個類能夠在一起工作。介面卡模式的形式分為 類的介面卡模式和物件的介面卡模式 模式原理...