public Peoplecar(String carName,double price,int busLoad,double carGo){?//調(diào)用父類方法 this.setCarName(carName);是不是也可以用super.setCarName(carName);兩者具體區(qū)別在哪,謝謝,不要百度啊,要自己理解的講解
2 回答
已采納

qq_青棗工作室_0
TA貢獻(xiàn)446條經(jīng)驗(yàn) 獲得超754個(gè)贊
如果你子類里沒有定義一個(gè)setCarName方法,那this.setCarName(carName); 跟super.setCarName(carName); 是一樣的,都調(diào)用父類的方法。
如果你子類里有定義一個(gè)setCarName,那才有區(qū)別,this就調(diào)用自己的,super就調(diào)用父類的。
如果父類的setCarName是private的,那子類就不能訪問到父類的setCarName,用super.setCarName()也不行的。要求是public 或 protected才能用super.setCarName()來訪問。

此生不變丶
TA貢獻(xiàn)36條經(jīng)驗(yàn) 獲得超19個(gè)贊
this 指 本類對(duì)象。 super 指父類的對(duì)象。 我是這么理解的。 區(qū)別就是 ?super()從子類中調(diào)用父類的構(gòu)造方法,this()在同一類內(nèi)調(diào)用其它方法。
添加回答
舉報(bào)
0/150
提交
取消