社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
go 的哲学是组合优于继承,使用 struct 嵌套即可完成组合,内嵌的结构体属性就像外层结构的属性即可,可以直接调用。
注意初始化外层结构体时,必须指定内嵌结构体名称的结构体初始化,如下看到 s1方式报错,s2 方式正确。
type stPeople struct {
Gender bool
Name string
}
type stStudent struct {
stPeople
Class int
}
//尝试4 嵌套结构的初始化表达式
//var s1 = stStudent{false, "JimWen", 3}
var s2 = stStudent{stPeople{false, "JimWen"}, 3}
fmt.Println(s2.Gender, s2.Name, s2.Class)
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!