Go "继承中"的方法
package main
import "fmt"
func main() {
p1 := Person{name: "小明",age: 21}
fmt.Println(p1.name,p1.age)
p1.eat()
s1 := Student{Person:Person{name: "狗子",age: 20},school: "北京大学"}
fmt.Println(s1.name,s1.age,s1.school)
s1.eat()
s1.study()
s1.eat()
}
type Person struct {
name string
age int
}
type Student struct {
Person
school string
}
func (p Person) eat() {
fmt.Println("父类的方法,吃饭...")
}
func (s Student) study() {
fmt.Println("子类新增方法,学习")
}
func (s Student) eat() {
fmt.Println("吃炸鸡,喝啤酒")
}
结果:
小明 21
父类的方法,吃饭...
狗子 20 北京大学
吃炸鸡,喝啤酒
子类新增方法,学习
吃炸鸡,喝啤酒