オーバーライドの連鎖 コンストラクタでの例
public Human(Calendar birthDay, String firstName, String lastName) {
this.birthDay = birthDay;
this.firstName = firstName;
this.lastName = lastName;
}
public Human(String firstName, String lastName) {
this(null, firstName, lastName);
}
public Human(String lastName) {
this(null, null, lastName);
}
public Human() {
this(null, null, null);
}
初期値を詳細に設定できるコンストラクタと適当に作るコンストラクタを用意するが、初期化のコードは詳細なコンストラクタに纏める書き方。どのコンストラクタを使っても初期化コードは同じものが使われるのでコードの重複が避けられる、という例。