答案是看發起的類。當main函式中定義的是父類的時候,父類直接調起父類自己的methodfather方法,此方法直接呼叫父類的方法。如結果1顯示
當main函式中定義的是子類的時候,雖然子類中沒有methodfather方法。那就應該是直接呼叫父類的這個方法。但是methodfather方法中的執行緒呼叫的method方法是子類的。
原則就是調起的類是哪個,就先找哪個類中的方法。
父類
package readcode;
public
class
testrunfather
void
methodfather()
};thread thread =
newthread
(runnable)
;
thread.
start()
;// system.out.println("this is father"+ c);
}}
子類
package readcode;
public
class
testrunsun
extends
testrunfather
void
methodfather()
;}
主函式
package readcode;
public
class
testrunfatherson
}
主函式中調起的類是父類自己
結果1是
執行緒開始/
this is fatherrun
當主函式調起的類是子類的時候
結果2是
執行緒開始/
this is son startrun
this is fatherrun
this is son endrun
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父類子類方法呼叫問題
題目如下 1.首先看主函式 先執行newb 呼叫b構造方法super 5 呼叫父類a中構造方法setvalue 但是子類中存在setvalue 於是優先呼叫子類中方法此時value 10 2.繼續往下setvalue getvalue 3 先執行getvalue,由於子類中無getvalue 於是呼...
java 子類與父類
1.父類 注 f m1 是父類不被繼承的方法 f m2 父類被子類重寫的方法 public class father public void f m1 public void f m2 2.子類 注 f m3是子類的私有方法 f m2 子類重寫父類方法 public class sunextends...