以下は簡単な例です。私には2つの抽象クラスがA
あり、1つは抽象メソッドを含むB
具象クラスです。C
新しいを作成するとき、のコンストラクターが呼び出されるC
のを期待していました。なぜ彼らが呼ばれないのか、何か考えはありますか?A
B
//Q.java
class Q {
abstract class A {
A() {
System.out.println("in A");
}
public abstract void sayHi();
}
abstract class B extends A {
B() {
super();
System.out.println("in B");
}
}
class C {
C() {
super();
System.out.println("in C");
}
public void sayHi() {
System.out.println("Hi!");
}
}
Q() {
C Ccc = new C();
}
public static void main(String[] args) {
Q z = new Q();
}
}