"——————人與人之間還是簡單點好————————"
函數接口的使用方式
//接口方法
type Client interface {
IsConnected() bool
IsClose() bool
}
type client struct {
I bool
Miss string
You int32
//...anything else !
}
//結構體實現的方法
func (c *client) IsConnected() bool {//...
}
func (c *client) IsClose() bool {//...
}
一般性的使用就是client.IsConnection()
重點注意:
將實例的類型方法 賦值給接口函數。
二者必須完全相同,或者後者是前者的子集,如果接口函數不等於|少於就實現不了賦值
換句話說就是:接口中所有方法必須均被實現
{ 1,2,3 --> 1,2 可以 } 大不了3不做
{ 1,2 --> 1,2 ,3 不可以 } 因爲沒3完成不了賦值
3.接口函數的便捷體現在 使用接口調用實例化結構體的方法:
例如:C.IsConnection() 接口變量C使用了結構體的方法
func main(){
c := new(client) //指針類型 *client
//或者c := &client{}
var C Client
C = c
C.IsConnection() //用接口函數實現 內容
}