以下のコードでは、サブクラスの super(t) がそのスーパークラス (クラス B) で引数なしのコンストラクターを明示的に呼び出していることがわかります。理解に問題があるように思われるのは、サブクラスがスーパークラスで引数なしのコンストラクターを呼び出さなければならないのはなぜですか? 私はこれの目的を理解できないようですか?
public class Test {
public static void main(String[] args) {
B b = new B(5);
}
}
class A extends B {
public A(int t) {
super(t);
System.out.println("A's constructor is invoked");
}
}
class B {
public B(int k) {
System.out.println("B's constructor is invoked");
}
}