// code_019_struct_anonymous_field_method project main.go package main import ( "fmt" ) type Person struct { name string sex byte age int } func (p *Person) PrintInfo() { fmt.Printf("Person:%s,%c,%d\n", p.name, p.sex, p.age) } type Student struct { Person id int addr string } //方法被重写,但是不能被重载;若未被重写,则继承匿名字段的方法 func (s *Student) PrintInfo() { fmt.Printf("Student:%s,%c,%d\n", s.name, s.sex, s.age) } func main() { p := Person{"ck_god", 'm', 18} p.PrintInfo() s := Student{Person{"god_girl", 'f', 20}, 2, "sz"} s.PrintInfo() s.Person.PrintInfo() }
运行结果如下:
Person:ck_god,m,18 Student:god_girl,f,20 Person:god_girl,f,20
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。