Go/面向对象特性/匿名字段-继承

# 通过匿名字段实现继承特性

package main

import "fmt"

func main() {
	type Persion struct{
		name string
		age int
	}
	type Stu struct{
		Persion				//匿名字段  只有类型没用名字
		no int
		socre int
	}

	var s Stu = Stu{Persion{"Tom",18},20130012,98}
	fmt.Println(s)
	fmt.Printf("%+v\n",s)
	s2 := Stu{Persion:Persion{name:"Tom"}}
	fmt.Printf("%+v\n",s2)

	s.Persion = Persion{"Tom",18}
	fmt.Println(s.name)

	type Stu2 struct{
		Persion				//匿名字段  只有类型没用名字
		no int
		socre int
		name string
	}
	var ss2 Stu2
	ss2.name = "aa"
	ss2.Persion.name = "bb"
	fmt.Printf("%+v",ss2)

}

猜你喜欢

转载自blog.csdn.net/qq_24243483/article/details/84146592