007 クラス (クラスの利用)016 解答例

Carクラスの宣言

/**
 * Car クラスは車の情報を保持します。
 */
public class Car {
    // 車のモデル
    private String model;
    // 車の色
    private String color;
    // 車の所有者
    private Owner owner;

    /**
     * Car クラスのコンストラクタ
     *
     * @param model 車のモデル
     * @param color 車の色
     */
    public Car(String model, String color) {
        // 車のモデルと色を初期化
        this.model = model;
        this.color = color;
    }

    /**
     * 車の所有者を設定するメソッド
     *
     * @param owner 車の所有者
     */
    public void setOwner(Owner owner) {
        // 車の所有者を設定
        this.owner = owner;
    }

    /**
     * 車の情報を表示するメソッド
     */
    public void displayCarInfo() {
        // 車のモデルを表示
        System.out.println("Car Model: " + model);
        // 車の色を表示
        System.out.println("Car Color: " + color);
        // 車の所有者が設定されている場合は所有者の情報を表示
        if (owner != null) {
            System.out.println("Owner: " + owner.getOwnerName());
        }
    }
}

Ownerクラスの宣言

/**
 * Owner クラスは車の所有者の情報を保持します。
 */
public class Owner {
    // 車の所有者の名前
    private String ownerName;
    // 車の所有者の連絡先番号
    private String contactNumber;

    /**
     * Owner クラスのコンストラクタ
     *
     * @param ownerName      車の所有者の名前
     * @param contactNumber  車の所有者の連絡先番号
     */
    public Owner(String ownerName, String contactNumber) {
        // 車の所有者の名前と連絡先番号を初期化
        this.ownerName = ownerName;
        this.contactNumber = contactNumber;
    }

    /**
     * 車の所有者の名前を取得するメソッド
     *
     * @return 車の所有者の名前
     */
    public String getOwnerName() {
        // 車の所有者の名前を返す
        return ownerName;
    }
}

利用例

public class CarOwnerExample {
    public static void main(String[] args) {
        // Car オブジェクトの生成
        Car myCar = new Car("Toyota Camry", "Blue");

        // Owner オブジェクトの生成
        Owner carOwner = new Owner("John Doe", "+123456789");

        // Car オブジェクトに所有者を設定
        myCar.setOwner(carOwner);

        // Car オブジェクトと Owner オブジェクトの情報を表示
        myCar.displayCarInfo();
    }
}

この例では、Car クラスが車の情報を保持し、Owner クラスが所有者の情報を保持しています。Car クラスには Owner オブジェクトを関連付ける setOwner メソッドがあります。CarOwnerExample クラスでは、実際にオブジェクトを生成し、関係を構築して情報を表示しています。

「007 クラス」問題集リスト