重寫時會有什麼執行流程?我相信的是,當我們調用任何類的構造函數/對象時,在執行時首先調用父構造函數而不是子進程。但在過度消除的情況下會發生什麼? 讓假設:Java執行流程?
class A {
public A(){
printStatus();
}
public void printStatus(){
System.out.println("In Class A");
}
}
class B extends A{
public B(){
printStatus();
}
@Override
public void printStatus(){
System.out.println("In Class b");
}
}
public class Test2 {
public static void main(String[] args){
B b = new B();
}
}
出把這段代碼是:
In Class b
In Class b
我不明白的是,爲什麼它的打印「在課堂上」而已,它應該是「在A級和,在類b「,
當我從類b中刪除重寫方法。它給了我想要的輸出。
請格式化你的代碼 – david99world