這期內容當中小編將會給大家帶來有關golang中如何使用接口,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
在go語言中,一個類只要實現了接口要求的所有函數,我們就說這個類實現了這個接口。
golang接口賦值實現方式一:將對象實例賦值給接口
package main import "fmt" //定義一個Animal接口,實現飛和跑的功能 type Animal interface { Fly() Run() } //定義一個Bird類 type Bird struct { } //通過類實現接口的函數功能 func (bird Bird) Fly() { fmt.Println("the bird is flying!!!") } func (bird Bird) Run() { fmt.Println("the bird is running!!!") } func main() { // 聲明一個Animal接口類型的變量 var animal Animal //聲明一個Bird類型的變量,并將其置0 //new()函數是一個用來分配內存的內建函數,它不初始化內存,只將其置0。 bird := new(Bird) //把bird對象賦值給animal接口 animal = bird //調用接口中的函數功能 animal.Fly() animal.Run() }
golang接口賦值實現方式二:將接口賦值給接口
package main import "fmt" //定義一個Animal接口,實現飛和跑的功能 type Animal interface { Fly() Run() } type Animal2 interface { Fly() } //定義一個Bird類 type Bird struct { } //通過類實現接口的函數功能 func (bird Bird) Fly() { fmt.Println("the bird is flying!!!") } func (bird Bird) Run() { fmt.Println("the bird is running!!!") } func main() { // 聲明一個Animal接口類型的變量 var animal Animal var animal2 Animal2 //聲明一個Bird類型的變量,并將其置0 //new()函數是一個用來分配內存的內建函數,它不初始化內存,只將其置0。 bird := new(Bird) //把bird對象賦值給animal接口 animal = bird //將animal接口賦值給animal2,注意函數功能包含關系,包含方法多的接口可以賦值給方法少的接口,反之,則不行。 animal2 = animal //調用接口中的函數功能 animal.Fly() animal.Run() animal2.Fly() }
上述就是小編為大家分享的golang中如何使用接口了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。