子類可以改變父類的屬性么
給我講講?這是為什么?
?父類里邊有 int n=10;?
?public void method(){
????System.out.println(n);
}
在 子類里有 n=20;
main里邊不論引用父類還是子類構(gòu)造的子類對(duì)象 調(diào)用 method 輸出的都是10;為什么啊
給我講講?這是為什么?
?父類里邊有 int n=10;?
?public void method(){
????System.out.println(n);
}
在 子類里有 n=20;
main里邊不論引用父類還是子類構(gòu)造的子類對(duì)象 調(diào)用 method 輸出的都是10;為什么啊
2017-07-24
舉報(bào)
2017-07-24
子類方法中有一個(gè)隱藏的super();語(yǔ)句,當(dāng)運(yùn)行子類方法時(shí),會(huì)先去訪問(wèn)父類的屬性,如果父類種已經(jīng)有這個(gè)屬性被定義,那么就使用父類的屬性,這時(shí) n并沒(méi)有被賦予子類的值,還是父類的,然后是輸出語(yǔ)句,你可以將int n = 10;放在super();語(yǔ)句下面 在調(diào)用method()方法看看.