首页 > 其他分享 >实验12:外观模式

实验12:外观模式

时间:2023-11-13 09:34:25浏览次数:29  
标签:外观 12 off void System 实验 println public out

[实验任务一]:计算机开启

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

 

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("关闭完成。");
    }
}

 

标签:外观,12,off,void,System,实验,println,public,out
From: https://www.cnblogs.com/lxh-666/p/17828458.html

相关文章

  • 实验13:享元模式
    [实验任务一]:围棋设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。  packagerjsj.no13;/** *客户端测试类 * */publicclassClient{   publicstaticvoidmain(String[]args){       IgoCh......
  • 实验十三
    设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。实验要求:1.提交类图;2.提交源代码;3.注意编程规范;4.要求用简单工厂模式和单例模式实现享元工厂类的设计。类图publicclassBlackChessimplementsChessPiece{publi......
  • 软件设计实验10:组合模式
    实验10:组合模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解组合模式的动机,掌握该模式的结构;2、能够利用组合模式解决实际问题。 [实验任务一]:组合模式用透明组合模式实现教材中的“文件夹浏览”这个例子。实验要求:1. 文件的执行不需真正实现,只需简单......
  • 软件设计实验11:装饰模式
    实验11:装饰模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解装饰模式的动机,掌握该模式的结构;2、能够利用装饰模式解决实际问题。 [实验任务一]:手机功能的升级用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而......
  • 高飞实验12和13
    packageshiyan12;publicclassClient{publicstaticvoidmain(String[]args){MainFramemainframe=newMainFrame();mainframe.on();}}Clientpackageshiyan12;publicclassCPU{publicbooleanrun(){System.out.......
  • 实验1:UML与面向对象程序设计原则
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、掌握面向对象程序设计中类与类之间的关系以及对应的UML类图;2、理解面向对象程序设计原则。[实验任务一]:UML复习阅读教材第一章复习UML,回答下述问题:Q:面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。A......
  • 实验2:简单工厂模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解简单工厂模式的动机,掌握该模式的结构;2、能够利用简单工厂模式解决实际问题。[实验任务一]:女娲造人使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,......
  • 2023年11月12日每日随笔
    今天,主要进行了ERP的系统的主要功能的揣摩和学习,对于博欧ERP的网站进行参考,可能我的能力不够吧,对于支出收入,那里面的功能我一点也不理解,我中感觉把题目改成输入输出好,接受外界信息,修改外界信息等等,也在网上找到了许多的参考,对于分摊工资也进行了大概了解,有着具体的思路,但是想找一......
  • ES7-ES12
    ES6是JavaScript的一次重大升级,但随后的版本也带来了许多新特性和改进。下面是ES6之后的几个版本的重要特性:ES2016(ES7):指数运算符(**):引入了指数运算符,用于计算乘方。Array.prototype.includes():提供了一种更简洁的方法来判断数组中是否包含某个元素。ES2017(E......
  • 2023-2024-1学期20232412《网络空间安全导论》第十周学习总结
    教材学习内容总结本周主要学习《网络空间安全导论》第一章的内容,初步了解了网络空间安全的概念以及学科所覆盖的内容,了解了相关的法律法规,并且接触了之前从未了解的信息安全标准。通过第一章的学习,我也正式开始对我们专业的学习,认识到网络空间安全的重要性,掌握了计算机学习与其他......