如果一个 struct 嵌套了多个匿名结构体,那么这个结构可以直接访问多个匿名结构体的方法,从而实现了多重继承.
样例:
结构体样例
package main
import (
"fmt"
)
type Int int
func (i *Int)Add(a, b int) {
*i = Int(a + b)
return
}
func testInt() {
var a Int
a.Add(100, 200)
fmt.Println(a)
}
func main() {
testInt()
}
package main
import (
"fmt"
)
type Student struct {
Name string
Age int
}
func (s *Student) Set(name string, age int) {
s.Name = name
s.Age = age
}
func testStudent() {
var s Student
s.Set("abc", 100)
fmt.Println(s)
}
func main() {
testStudent()
}
来源: http://www.bubuko.com/infodetail-2460634.html