下面是一个简单的例子。我有两个抽象类,A
一个B
具体类,C
其中包含抽象方法。
当我创建一个 newC
时,我希望看到构造函数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();
}
}