017 インターフェイス(クラスとインターフェイスの関係性) 021 解答例

// VolumeAdjustable インターフェイス
interface VolumeAdjustable {
    void adjustVolume(int volumeLevel);
}

// TV クラスが VolumeAdjustable インターフェイスを実装
class TV implements VolumeAdjustable {

    private int currentVolume;  // TV の現在の音量

    // コンストラクタ
    public TV() {
        this.currentVolume = 0;  // 初期音量を 0 に設定
    }

    // VolumeAdjustable インターフェイスのメソッドを実装
    @Override
    public void adjustVolume(int volumeLevel) {
        // 実際の音量調整のロジックをここに実装
        this.currentVolume = volumeLevel;
        System.out.println("TVの音量を調整しました。新しい音量: " + this.currentVolume);
    }

    // 他の TV クラスに関連するメソッドや機能を追加できます
}

// メインクラス(テスト用)
public class Main {
    public static void main(String[] args) {
        // TV クラスのインスタンスを作成
        TV myTV = new TV();

        // 音量を調整
        myTV.adjustVolume(20);
    }
}

この例では、VolumeAdjustable インターフェイスには adjustVolume メソッドが含まれており、TV クラスはこのインターフェイスを実装しています。TV クラスでは、adjustVolume メソッド内で音量を設定し、設定された音量をコンソールに表示しています。

「017 インターフェイス」問題集リスト