㈠ JAVA子類繼承了父類,那麼子類怎麼調用父類的方法
對於已覆蓋的方法來說,例如Child是Parent的子類,而且,Child和Parent都有個toString()方法,也就是說,Child覆蓋Parent的toString()方法。如果child要調用Parent的toString()方法,只需要把child強制轉換為Parent就可以,也就是(Parent)child.toString(),這樣就是調用其父類的toString()方法。如果不是覆蓋的,就不用強制轉換,直接調用就可以。
㈡ JAVA,請大家幫幫我,如何在子類重寫(覆蓋)父類的方法;如何在子類方法中調用父類方法的變數值來用。
一,"如何在子類重寫(覆蓋)父類的方法"
這個術語叫「重載」。很簡單,首先把父類方法原封復制到子類里,然後修改函數體就可以。注意函數簽名不能變。
二,如何在子類方法中調用父類方法的變數值來用
這是做不到的,不可能在一個函數中調用另一個函數的局部變數。父類的屬性是有可能用的,因為子類會繼承父類的public和protected屬性。
㈢ java如何調用父類的父類中被覆蓋的方法
子類已經覆蓋了父類,並且重寫了父類的方法, 一般來說, 就沒有必要用子類調用父類中被覆蓋的方法了.(否則就不要覆蓋了啊)
要實現也是可以的 ,我們 需要為子類提供一個其他的方法,用於去調用父類中被覆蓋的方法
參考代碼
classA{//父類
publicvoidprint(){
System.out.println("父類的print方法");
}
}
classBextendsA{//子類
@Override
publicvoidprint(){
System.out.println("子類的print方法");
}
//在子類里創造一個方法去調用父類的方法
publicvoidfuLeiPrint(){
super.print();//super指向父類
}
}
publicclassTest{
publicstaticvoidmain(String[]args){
Bb=newB();
b.print();
b.fuLeiPrint();
// Aa=(A)b;//這樣強轉還是列印的子類的方法,因為內存中還是子類
// a.print();
}
}