ここに行きます:
public class Parent {
public Parent(String name) {
this.name = name;
}
public String name = null;
}
public class Child extends Parent {
public Child(String name) {
super(name); // If I comment this : Implicit super constructor Parent() is undefined. Must explicitly invoke another constructor
}
}
「自分でスーパーコンストラクターを呼び出さない場合、コンパイラーはコンストラクターの最初のステートメントとして、引数なしの super() 呼び出しを挿入します」と言われています。
- これは、引数付きのコンストラクターにも当てはまりますか?
- コンパイラは、子コンストラクターと同じシグネチャで引数付きのスーパー コンストラクターを呼び出してはいけませんか?
- なぜこのような設計になったのでしょうか。