例えばHogeクラスだと暗黙的に public Hoge() が定義される。
ただし public Hoge(String hoge) 等を定義すると暗黙コンストラクタは使えない
public class Hoge {
public Hoge(String hige) {
}
}
public class Fuga extends Hoge{
public Fuga(String hoge) {
}
}
public Hoge() がないと、Fugaクラスでコンパイルエラーとなる
スーパークラスのコンストラクタを明示的に呼び出せばOK
public class Fuga extends Hoge{
public Fuga(String hoge) {
super(hoge);
}
}
スーパークラスにサブクラスから呼び出せる暗黙コンストラクタを定義する
public class Hoge {
public Hoge() {
}
public Hoge(String hige) {
}
}