1. 程式人生 > >Go語言基礎(十二) —— Go語言繼承

Go語言基礎(十二) —— Go語言繼承

繼承

  • 子類和父類的關係。
  • 子類物件可以直接訪問父類的屬性和方法
  • 子類可以新增自己的屬性和方法。
  • 子類可以重寫父類已有的方法。

案例:

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方法!