11.7实验12:外观模式
[实验任务一]:计算机开启
在计算机主机(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.注意编程规范。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下