java父類子類方法呼叫問題

2021-09-12 06:16:04 字數 625 閱讀 6245

題目如下

1.首先看主函式 先執行newb()呼叫b構造方法super(5)  ,呼叫父類a中構造方法setvalue ,但是子類中存在setvalue(),於是優先呼叫子類中方法此時value:10

2.繼續往下setvalue(getvalue()-3),先執行getvalue,由於子類中無getvalue()於是呼叫父類方法getvalue(),進入方法value值變為11,接著執行finally語句this.setvalue,this指代子類b,於是呼叫b中setvalue(),value:22.這時列印第乙個數字22,接著返回try語句中return,value值為11。此時setvalue(getvalue()-3)呼叫b中setvalue,值變為16

3.newb().getvalue(),呼叫父類方法getvalue(),值為17,進入finally語句呼叫子類中的setvalue()方法,值為34,打印出來第二個數字:34

4,接著還回try語句中return,值為17

5.最後靈魂一波:

java子類與父類方法呼叫

1.class parent public void method2 public class child extends parent public static void main string args 輸出 parent s method2 parent s method1 2.class ...

關於Java中子類呼叫父類方法

當乙個類繼承於另乙個類,子類中沒有父類的方法時。用子類的物件呼叫方法時,會首先在子類中查詢,如果子類中沒有改方法,再到父類中查詢。當乙個方法只在父類中定義時,呼叫該方法時會使用父類中的屬性。如果該方法中又呼叫了其他方法,那麼還是按照之前的順序,先在子類中查詢,再在父類中查詢。package temp...

Python 子類呼叫父類方法

python在繼承時,如果子類重寫了init 函式,則父類的init 不會被呼叫,這時如果子類只是想要對父類的init 函式進行簡單的擴充套件的話,是很不方便的。那麼有沒有比較方便的方法來從子類呼叫父類呢?第一種是直接使用父類的類名來直接呼叫。python3.3 class parent def i...