package main輸出:v ,0xc0000301f0import (
"fmt"
)type ball struct
func (b *ball) ping()
func (b ball) pong()
func main()
v.name = "wjc"
fmt.printf("v ,%p\n", &v)
v.ping()
v.pong()
fmt.println(v.name)
v1 := new(ball)
v1.name = "kelvin"
fmt.printf("v1 ,%p\n", v1)
v1.ping()
v1.pong()
fmt.println(v1.name)
}
ping ,0xc0000301f0
pong ,0xc000030200
wjcping
v1 ,0xc000030220
ping ,0xc000030220
pong ,0xc000030230
kelvinping
所以:struct 的例項和例項指標都可以呼叫值型別和指標型別 receiver 的方法。呼叫指標型別receiver的方法時,相當於傳引用。值接受者,編譯器copy乙份
但是:介面型別賦值時,值變數不能給賦值給方法為指標接受者的介面
複習 方法的過載
lesson six 2018 04 20 00 48 571.乙個專案或工程,一定是由乙個乙個類構成的。2.類是抽象的,比如建築圖紙。而具體的建築,是根據圖紙建設成的,實際上就是類的例項化 3.完成乙個專案或功能的思路 3.1所要完成的功能對應的類的物件是否存在 3.2若存在,則通過對像直接呼叫對...
go 型別方法 receiver的理解
package main import fmt type person struct func this person growth func this person changename newname string func main p.growth fmt.printf d p.age 因為...
java複習 方法的過載
方法的過載 overload 要求 1.同乙個類中 2.方法名必須相同 3.方法的引數列表不同 引數的個數不同 引數型別不同 補充 方法的過載與方法的返回值型別沒有關係!如下的四個方法構成過載 定義兩個int型變數的和 public int getsum int i,int j 定義三個int型變數...