2024/11/11

软件设计 实验12:外观模式

在计算机主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法 ,如内存(Memory)的自检(check())、CPU的运行(run())、硬盘(HardDisk)的读取(read())、操作系统(OS)的载入(load()),如果某一过程发生错误则计算机启动失败。

 

 

public
class OS {
    public void load() {
        System.out.println("OS正在载入");
    }
    public void off() {
        System.out.println("OS关闭");
    }
}

public class Memory {

    public void check() {
        System.out.println("内存正在自检");
    }
    public void off() {
        System.out.println("内存停止读取");
    }
}

public class HardDisk {

    public void read() {
        System.out.println("硬盘正在读取");
    }
    public void off() {
        System.out.println("硬盘已关闭读取");
    }
}


public class CPU {
    public void run() {
        System.out.println("CPU正在运行");
    }
    public void off() {
        System.out.println("CPU停止运行");
    }
}

public class MainFrame {
    //维持对子系统对象的引用
    private Memory memory;
    private CPU cpu;
    private OS os;
    private HardDisk disk;

    public MainFrame() {
        memory=new Memory();
        cpu=new CPU();
        os=new OS();
        disk=new HardDisk();
    }

    //调用子系统对象的业务方法
    public void on() {
        memory.check();
        cpu.run();
        os.load();
        disk.read();
        System.out.println("电脑启动完成");
    }
    public void off() {
        memory.off();
        cpu.off();
        os.off();
        disk.off();
        System.out.println("电脑关闭完成");
    }
}

public class App
{

    public static void main(String args[]) {
        MainFrame mf=new MainFrame();
        mf.on();
        System.out.println();
        mf.off();
    }
}

 

posted @ 2024-11-11 08:26  伐木工熊大  阅读(2)  评论(0编辑  收藏  举报