共計 755 個字符,預計需要花費 2 分鐘才能閱讀完成。
在 Go 語言中,接口(interface)是一種抽象類型,它定義了一組方法的集合。接口類型的變量可以存儲任何實現了這些方法的具體類型的值。接口類型的使用步驟如下:
- 定義接口類型:使用
type
關鍵字定義接口類型,使用interface
關鍵字指定接口的方法集合。例如:
type Shaper interface {Area() float64
Perimeter() float64
}
上述代碼定義了一個 Shaper
接口,該接口定義了兩個方法 Area()
和Perimeter()
。
- 實現接口方法:為了使某個類型實現接口,只需要在該類型上實現接口中定義的所有方法。例如:
type Rectangle struct {width, height float64
}
func (r Rectangle) Area() float64 {return r.width * r.height
}
func (r Rectangle) Perimeter() float64 {return 2 * (r.width + r.height)
}
上述代碼定義了一個 Rectangle
類型,并為其實現了 Shaper
接口中的方法。
- 使用接口類型:可以使用接口類型來聲明變量,并將實現了接口的具體類型賦值給變量。例如:
var s Shaper
s = Rectangle{width: 5, height: 3}
fmt.Println(s.Area())
fmt.Println(s.Perimeter())
上述代碼中,將一個 Rectangle
類型的值賦給接口類型的變量s
,然后通過該變量調用接口中定義的方法。
需要注意的是,Go 語言的接口是隱式實現的,也就是說,只要一個類型實現了接口中定義的所有方法,那么該類型就被視為實現了該接口,無需顯式聲明。這一特性使得 Go 語言的接口非常靈活和易于使用。
丸趣 TV 網 – 提供最優質的資源集合!
正文完