我定義三個類(A,B,C):爪哇不清楚結果
public class A {
int i = 5;
public A() {
foo();
}
public void foo() {
System.out.println(i);
}
}
class B extends A {
int i = 6;
}
class C extends B {
int i = 7;
public void foo() {
System.out.print(super.i);
}
public static void main(String[] args) {
C c = new C();
}
}
預期的結果是:6 但程序返回:0
有人可以解釋的結果? 您的幫助將不勝感激。
後不構造 - 但編譯構造體的第一部分* *後調用父類的構造。 –