继承
- 子类和父类的关系。
- 子类对象可以直接访问父类的属性和方法
- 子类可以新增自己的属性和方法。
- 子类可以重写父类已有的方法。
案例:
package main
import "fmt"
type Parent struct {
//父类属性
name string
age int
sex string
}
//父类方法
func (fu *Parent)play(){
fmt.Println("我是父亲,这是我的play方法!")
}
//父类方法
func(fu *Parent)playson(){
fmt.Println("我是父亲,这是我的playson方法!")
}
type Child struct {
//子类属性
Parent
knowleage string
}
//子类方法重写父类方法
func (son *Child)play(){
fmt.Println("我是儿子,这是我的play方法")
}
func main() {
parent := new(Parent)
parent.play()
parent.playson()
child := new(Child)
child.play()
//子类方法继承父类方法
child.playson()
}
运行结果为:
我是父亲,这是我的play方法!
我是父亲,这是我的playson方法!
我是儿子,这是我的play方法
我是父亲,这是我的playson方法!