首页 > 其他分享 >软件设计-Tutorial12

软件设计-Tutorial12

时间:2024-11-11 22:22:48浏览次数:1  
标签:Tutorial12 软件设计 System class println true public out

package Tutorial12;

// 定义各个硬件设备和软件的类
class Memory {
    public boolean check() {
        System.out.println("Memory self-checking...");
        // 假设返回true表示自检成功
        return true;
    }
}

class CPU {
    public boolean run() {
        System.out.println("CPU running...");
        // 假设返回true表示CPU运行成功
        return true;
    }
}

class HardDisk {
    public boolean read() {
        System.out.println("Hard Disk reading...");
        // 假设返回true表示硬盘读取成功
        return true;
    }
}

class OS {
    public boolean load() {
        System.out.println("Operating System loading...");
        // 假设返回true表示系统载入成功
        return true;
    }
}

// 创建外观类 ComputerFacade,用于封装开机的复杂逻辑
class ComputerFacade {
    private Memory memory;
    private CPU cpu;
    private HardDisk hardDisk;
    private OS os;

    public ComputerFacade() {
        this.memory = new Memory();
        this.cpu = new CPU();
        this.hardDisk = new HardDisk();
        this.os = new OS();
    }

    // 开机方法
    public void on() {
        System.out.println("Computer starting...");

        // 依次调用各个硬件和软件的启动方法,检查是否成功
        if (memory.check() && cpu.run() && hardDisk.read() && os.load()) {
            System.out.println("Computer started successfully!");
        } else {
            System.out.println("Computer failed to start.");
        }
    }
}

// 测试主机类
public class Mainframe {
    public static void main(String[] args) {
        ComputerFacade computer = new ComputerFacade();
        // 按下开机按钮
        computer.on();
    }
}

 

标签:Tutorial12,软件设计,System,class,println,true,public,out
From: https://www.cnblogs.com/muzhaodi/p/18540689

相关文章

  • 4.3软件设计:面对对象的设计
    面对对象设计1、面对对象的架构设计1.1第一步:构造系统的物理模型1.2第二步:设计子系统划分各个子系统的方式定义子系统之间的关系定义子系统的接口1.3第三步:非功能需求设计2、面对对象的用例设计与类设计2.1类2.2类间关系2.3细化用例第一步:定义类的属性第二步:定义......
  • 幼儿早教小程序软件设计与实现毕业设计源码
    博主介绍:✌专注于VUE,小程序,安卓,Java,python,物联网专业,有17年开发经验,长年从事毕业指导,项目实战✌选取一个适合的毕业设计题目很重要。✌关注✌私信我✌具体的问题,我会尽力帮助你。研究的背景:随着科技的发展和教育理念的进步,幼儿教育越来越受到重视。然而,传统的幼儿教育模......
  • 软件设计师:排序算法总结
    一、直接插入排序方式:从第一个数开始,拿两个数比较,把后面一位跟前面的数比较,把较小的数放在前面一位二、希尔排序方式:按“增量序列(步长)”分组比较,组内元素比较交换 假设初始关键字:48   37   64   96   75   12   26   58   54   3,有......
  • 软件设计-Tutorial09
    用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。类图:```mermaidclassDiagramclassRoad{<<interface>>+drive()}classCementRoad{+drive()}classAsphaltRoad{+drive()......
  • 软件设计Tutorial08
      实验8:适配器模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解适配器模式的动机,掌握该模式的结构;2、能够利用适配器模式解决实际问题。 [实验任务一]:双向适配器实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。实验要求:1. 画出对应的类图;......
  • 学习高校课程-软件设计模式-责任链模式和命令模式(lec9)
    原文链接ChainofResponsibility:ProblemExample:anonlineorderingsystem示例:在线订购系统–Therequestmustpassaseriesofchecks–Newrequirements:validation,filteringrepeatedfailedrequests,speedingupbyreturningcachedresults,andmore–......
  • 学习高校课程-软件设计模式-享元模式和代理模式(lec8)
    原文链接Flyweight:ProblemEachparticle,suchasabullet,amissileorapieceofshrapnelwasrepresentedbyaseparateobjectcontainingplentyofdata.Atsomepoint,whenthecarnageonaplayer’sscreenreacheditsclimax,newlycreatedparticlesno......
  • 学习高校课程-软件设计模式-组合模式、装饰器模式和外观模式(lec7)
    原文链接Composite:ProblemUsingtheCompositepatternmakessenseonlywhenthecoremodelofyourappcanberepresentedasatree.仅当应用程序的核心模型可以表示为树时,使用复合模式才有意义。Forexample,imaginethatyouhavetwotypesofobjects:Products......
  • 软件设计--实验七
    实验7:单例模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解单例模式的动机,掌握该模式的结构;2、能够利用单列模式解决实际问题。 [实验任务一]:学号的单一仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。 类图:```mermaidclassDiagram......
  • 软件设计--建造者模式
    建造者模式建造者模式是一种创建型设计模式,它允许你创建复杂对象的步骤与表示方式相分离。建造者模式是一种创建型设计模式,它的主要目的是将一个复杂对象的构建过程与其表示相分离,从而可以创建具有不同表示形式的对象。概要意图将一个复杂的构建过程与其表示相分离,使得同样的......