java「オブジェクト指向の包括的な質問」

/ *

  • コンピュータの起動プロセスとシャットダウンプロセスをシミュレートするUSB​​インターフェイスプログラムを作成します。起動プロセス中に、マウス、キーボード、マイク、およびその他のUSBデバイスをロードする必要があります。具体的な要件は次のとおりです。
    (1)インターフェイスUSBを定義します。 USBデバイスの起動とシャットダウンを示すためにそれぞれ使用される2つの抽象メソッドturnOn()he turnOff()
    (2)マウス、キーボードKeyBoard、マイクMicクラスを記述し、turnOn()メソッドとturnOff()メソッドを実装します。この方法では、「XXデバイスが開始されました」または「XXデバイスがオフになっています」と表示されます。
    (3)コンピュータークラスComputerを作成します。これには、コンピューターのUSBスロットの数を表す配列が必要です。USBデバイスを追加する方法は次のとおりです。 add(USB usb)、関数はすべてのスロットをトラバースすることです。空きがある場合は、USBデバイスを追加してUSBデバイスを
    起動するpowerOn()メソッドシミュレートします。関数はすべてのUSBインターフェイスをトラバースすることです。USBの場合デバイスが接続されると、USBデバイスが起動し、「コンピューターは正常に起動しました」と表示され
    、powerOff()はUSBデバイスのシャットダウンをシミュレートします。メソッド、関数は、すべてのUSBインターフェイスをトラバースすることです。 USBデバイスを接続し、USBデバイスの電源を切り、「コンピューターのシャットダウンに成功しました」と表示します。
    (4)テストクラスを記述し、コンピューターオブジェクトの作成を要求し、マウス、キーボード、マイクオブジェクトを作成し、それらをコンピューターに追加します。コンピューターを起動し、コンピューターをシャットダウンします
  • * /
package test1;
import java.text.*;
import java.util.*;
public class Main {
    
    
    public static void main(String[] args) {
    
    

        Computer computer = new Computer();
        Mouse mouse = new Mouse();
        computer.add(mouse);
        Mic mic = new Mic();
        computer.add(mic);
        KeyBoard keyBoard = new KeyBoard();
        computer.add(keyBoard);
        
        computer.powerOn();
        computer.powerOff();
    }
}
interface USB{
    
    
    public void turnOn();
    public void turnOff();
}

class Mouse implements USB{
    
    
    public void turnOn(){
    
    
        System.out.println("鼠标打开了");
    };
    public void turnOff(){
    
    
        System.out.println("鼠标关闭了");
    }
}
class KeyBoard implements USB{
    
    

    public void turnOn(){
    
    
        System.out.println("键盘打开了");
    };
    public void turnOff(){
    
    
        System.out.println("键盘关闭了");
    }
}
class Mic implements USB{
    
    
    public void turnOn(){
    
    
        System.out.println("麦克风打开了");
    };
    public void turnOff(){
    
    
        System.out.println("麦克风关闭了");
    }
}
class Computer{
    
    

    //利用C语言做题原理,定义一个长度够大的数组,用index记录数组的下标值
    USB[] usbs = new USB[10];

    int index=0;
    public void add(USB usb){
    
    
        usbs[index]=usb;
        index++;
    }
    public void powerOn(){
    
    
        for(int i=0;i< index;i++){
    
    
            usbs[i].turnOn();
        }
    }
    public void powerOff(){
    
    
        for(int i=0;i< index;i++){
    
    
            usbs[i].turnOff();
        }
    }

}

おすすめ

転載: blog.csdn.net/ziyue13/article/details/111415567