Go Adapter 介面卡模式

2021-09-24 10:12:51 字數 979 閱讀 4478

定義:

將乙個類的介面轉換成客戶希望的另乙個介面,adapter模式使得原本由於介面

不相容而不能一起工作的那些類可以一起工作。

adapter模式主要應用於希望復用一些現存的類,但是現在新的介面又於復用環境

要求不一致的情況,在遺留**復用、類庫遷移等方面非常有用。

gof23定義了兩種adapter模式的實現結構,分別為類adapter和物件apadter,

主要區別在,類adapter是用多繼承,不靈活(多型),物件adapter

是用字段組合的方式,很靈活

package main

import "fmt"

// 將乙個類的介面轉換成客戶希望的另乙個介面,adapter模式使得原本由於介面

// 不相容而不能一起工作的那些類可以一起工作

// adapter模式主要應用於希望復用一些現存的類,但是現在新的介面又於復用環境

// 要求不一致的情況,在遺留**復用、類庫遷移等方面非常有用。

// gof23定義了兩種adapter模式的實現結構,分別為類adapter和物件apadter,

// 主要區別在,類adapter是用多繼承,不靈活(多型),物件adapter

// 是用字段組合的方式,很靈活

// 定義乙個新的介面

type target inte***ce

// 定義乙個老的介面

type adaptee inte***ce

// 定乙個adapter介面

type adapter struct

func (a *adapter) process()

// 實現舊介面struct

type oldadaptee struct

func (o *oldadaptee) foo()

func (o *oldadaptee) bar()

func main()

介面卡模式(類介面卡 物件介面卡)

做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...

介面卡模式 預設介面卡,類介面卡,物件介面卡

模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...

設計模式 介面卡模式 類介面卡 物件介面卡

乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...