亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

方法可以重寫,變量可以嗎

測試類:

public?class?Initail?{
????public?static?void?main(String[]?args)?{
????????Phone?phone?=?new?Phone();
????????SmartPhone?smartPhone?=?new?SmartPhone();

????????phone.call();
????????smartPhone.call();

????????phone.printTarget();
????????smartPhone.printTarget();
????}
}

父類

public?class?Phone?{
????String?target?=?"me";
????public?void?call(){
????????System.out.println("You?call?to?"+this.target);
????}
????public?void?printTarget(){
????????System.out.println(this.target);
????}
}

子類

public?class?SmartPhone?extends?Phone?{
????//String?target?=?"notme";
????//不寫這一行,this.target?為父類中的me
????public?void?call(){
????????System.out.println("You?call?to?"+this.target);
????}
????public?void?printTarget(){
????????System.out.println(this.target);
????}
}

此時運行smartPhone.printTarget()的結果為me,在該類里沒有target變量,它卻識別到了父類里的target,但如果去掉注釋,他就會使用子類的target,這算是一種重寫嗎?按理說不可以定義重名的變量,那么是重寫了(子類有target變量,被覆寫為notme),還是說目前的子類中沒有target變量,變量是父類的呢?(類似于子類沒有target存在時,target 就相當于是 super.target)


正在回答

2 回答

是一種重寫

0 回復 有任何疑惑可以回復我~
#1

慕仙7356912

就像是改變了參數值
2021-01-04 回復 有任何疑惑可以回復我~

變量不可以重寫

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

方法可以重寫,變量可以嗎

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號