11.7實驗12:外觀模式

發表於2024-11-18

[實驗任務一]:計算機開啟

在計算機主機(Mainframe)中,只需要按下主機的開機按鈕(on()),即可呼叫其他硬體裝置和軟體的啟動方法 ,如記憶體(Memory)的自檢(check())、CPU的執行(run())、硬碟(HardDisk)的讀取(read())、作業系統(OS)的載入(load()),如果某一過程發生錯誤則計算機啟動失敗。

實驗要求:

1. 提交類圖;

2.提交原始碼;

package rjsj.no12;

/**

* CPU類:子系統類

*

*/public class CPU {

public void run(){

System.out.println("處理器執行");

}

public void off(){

System.out.println("處理器關閉");

}

}

package rjsj.no12;

/**

* Disk(硬碟)類:子系統類

*

*/

public class Disk {

public void read(){

System.out.println("硬碟讀取");

}

public void off(){

System.out.println("硬碟關閉");

}

}

package rjsj.no12;

/**

* Memory類:子系統類

*

*/

public class Memory {

public void check(){

System.out.println("記憶體自檢");

}

public void off(){

System.out.println("記憶體關閉");

}

}

package rjsj.no12;

/**

* 作業系統OS類:子系統類

*

*/

public class OS {

public void load(){

System.out.println("作業系統載入");

}

public void off(){

System.out.println("作業系統關閉");

}

}

package rjsj.no12;

/**

* 主視窗類:外觀類

*

*/

public class Mainframe {

private Memory memory;

private CPU cpu;

private Disk disk;

private OS os;

public Mainframe(){

memory = new Memory();

cpu = new CPU();

disk = new Disk();

os = new OS();

}

public void on(){

memory.check();

cpu.run();

disk.read();

os.load();

}

public void off(){

memory.off();

cpu.off();

disk.off();

os.off();

}

}

package rjsj.no12;

public class Client {

public static void main(String[] args) {

Mainframe mainframe = new Mainframe();

System.out.println("電腦啟動中...");

mainframe.on();

System.out.println("啟動完成。");

System.out.println("電腦關閉中...");

mainframe.off();

System.out.println("關閉完成。");

}

}

3.注意程式設計規範。

相關文章