package main
//golang 物件導向
import(
. 「fmt」
)//type相當於 c/c++的 typedef拉
type myint int64
type person struct
//繼承
//匿名欄位person,相當於c/c++的繼承拉,student就擁有了person所有的屬性拉,
//其實c/c++繼承過來和golang這種組合之後的類記憶體布局一樣的哈,都是先父類的成員
//在子類的成員拉。
type student struct
//重寫,相當於c/cperson++的虛函式拉
//func (this *student)say()
//注意這裡要傳指標拉, 否則修改的還是副本拉,只有傳指標到函式內部,這樣修改的才是
//呼叫物件自身的堆記憶體位址拉, 否則函式內部訪問的則是物件的copy拉。。
//c/c++也是這樣實現的成員函式拉,他的第乙個引數永遠傳this拉。。。
func (this *person)say()
func main()
println(「hellotype myint int64」, p2)
stu1 := student, 1}
stu1.say()
golang 物件導向
method的語法如下 func r receivertype funcname parameters results 下面我們用最開始的例子用method來實現 package main import fmt math type rectangle struct type circle struc...
golang 物件導向
method的語法如下 func r receivertype funcname parameters results 下面我們用最開始的例子用method來實現 package main import fmt math type rectangle struct type circle struc...
Golang物件導向
golang中雖然沒有class,但是通過結構體struct依然支援oop 封裝 多型 繼承 使用struct封裝物件的屬性。type person struct golang同樣支援繼承,不需要extends,只需要在struct中新增父類屬性即可。type student struct gola...