在go語言中,只要一個類型實現了一個接口含有的方法,我們就可認爲該類型實現了該接口,下面是go語言中一個簡單的類型和接口的例子。
package main
import (
"fmt"
)
//定義一個接口,實現run方法
type IRun interface {
run()
}
//定義一個大人的類型
type man struct {
}
//定義一個小孩類型
type kid struct {
}
//爲大人實現run方法,實質也是爲大人實現了IRun接口
func (m *man) run() {
fmt.Println("大人在跑")
}
//爲小孩實現run方法,實質也是爲小孩實現了IRun接口
func (k *kid) run() {
fmt.Println("小孩在跑")
}
func main() {
var krun IRun = new(kid)
krun.run()
var mrun IRun = new(man)
mrun.run()
}
//×---------------------運行結果------------------×//
小孩在跑
大人在跑