問題
以下のクラス Car
があります。このクラスにはデフォルトコンストラクタと、引数を受け取るコンストラクタがあります。main
メソッドでこのクラスのオブジェクトを生成し、コンストラクタが正しく呼び出されていることを確認してください。
public class Car {
private String brand;
private String model;
// デフォルトコンストラクタ
public Car() {
this.brand = "Unknown";
this.model = "Unknown";
}
// 引数を受け取るコンストラクタ
public Car(String brand, String model) {
this.brand = brand;
this.model = model;
}
// ゲッターメソッド(省略)
}
ヒント
Car
クラスのデフォルトコンストラクタは引数を受け取らず、デフォルトの値でフィールドを初期化します。したがって、デフォルトコンストラクタが呼び出された場合、ブランドとモデルはデフォルトの値になります。- 引数を受け取るコンストラクタは、引数で指定された値でフィールドを初期化します。したがって、引数を指定してコンストラクタが呼び出された場合、ブランドとモデルは指定された値になります。
main
メソッド内でCar
クラスのオブジェクトを生成し、その後、生成したオブジェクトの状態を出力してみてください。これにより、どのコンストラクタが呼び出されたかを確認できます。
→解答例