首页 > 其他分享 >外观模式

外观模式

时间:2024-12-29 21:51:44浏览次数:5  
标签:外观 void System 模式 CPU println public out

实验12:外观模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解外观模式的动机,掌握该模式的结构;

2、能够利用外观模式解决实际问题。

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

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

类图

源代码

public class ComputerFacade {
    private final Memory memory;
    private final CPU cpu;
    private final HardDisk hardDisk;
    private final OS os;

    // 构造函数,初始化所有部件
    public ComputerFacade() {
        this.memory = new Memory();
        this.cpu = new CPU();
        this.hardDisk = new HardDisk();
        this.os = new OS();
    }

    // 启动方法,调用各个部件的方法
    public void on() {
        try {
            memory.check(); // 内存自检
            cpu.run();      // CPU运行
            hardDisk.read(); // 硬盘读取
            os.load();      // 加载操作系统
            System.out.println("Computer started successfully.");
        } catch (Exception e) {
            System.out.println("Error during computer startup: " + e.getMessage());
        }
    }
}

public class Memory {
    public void check()
    {
        System.out.println("Memory checking.....");
    }
}

public class CPU {
    public void run()
    {
        System.out.println("CPU running.....");
    }
}

public class HardDisk {
    public void read() {
        System.out.println("Hard disk reading...");
    }
}

public class OS {
    public void load() {
        System.out.println("Operating system loading...");
    }
}

public class Main {
    public static void main(String[] args) {
        ComputerFacade computer = new ComputerFacade();
        computer.on(); // 调用外观类的on()方法来启动计算机
    }
}

 

标签:外观,void,System,模式,CPU,println,public,out
From: https://www.cnblogs.com/pinganxile/p/18639636

相关文章

  • 工厂方法模式
    目前常用的加密算法有DES(DataEncryptionStandard)和IDEA(InternationalDataEncryptionAlgorithm)国际数据加密算法等,请用工厂方法实现加密算法系统。实验要求:1.画出对应的类图;2.提交该系统的代码,该系统务必是一个可以能够直接使用的系统,查阅资料完成相应加密算法的实现;3.注......
  • 抽象工厂模式
    使用抽象工厂模式,完成下述产品等级结构:  1. 画出对应的类图;   2. 提交源代码;publicinterfaceSkin{    voidshow();}publicinterfaceGender{    voidshow();}publicinterfaceHumanFactory{    SkincreateSkin();    GendercreateG......
  • 建造者模式
    [实验任务一]:计算机组装使用建造者模式,完成下述任务:计算机组装工厂可以将CPU、内存、硬盘、主机等硬件设备组装在一起构成计算机,计算机的类型可以是笔记本,也可以是台式机。  源代码:interfaceBuilder{    voidsetCPU(Stringcpu);    voidsetRam(intram);  ......
  • 原型模式
    [实验任务一]:向量的原型用C++完成数学中向量的封装,其中,用指针和动态申请支持向量长度的改变,使用浅克隆和深克隆复制向量类,比较这两种克隆方式的异同。  #include<iostream>#include<stdexcept> classVector{private:    int*elements;//指向向量元素的指针......
  • redis-2(集群模式)
    主从模式(master-slave)实战规划图实际配置1,克隆主机,以redis1为基础,克隆出redis2和32,配置IP和主机名称,重启,使用xshell链接vi/etc/sysconfig/network-scripts/ifcfg-ens33:1521->22vi/etc/hostname:1redis2reboot重启使用xshell或者finalShell链接......
  • 微服务架构设计模式PDF免费下载
    适读人群:本书的重点是架构和开发,适合负责开发和交付软件的任何人(例如开发人员、架构师、CTO等)阅读。示例代码使用Java语言和Spring框架世界十大软件架构师之一、微服务架构先驱者亲笔撰写,微服务实用落地指南。示例代码使用Java编程和Spring框架电子版仅供预览,下载后24小时内......
  • 设计模式-工厂和单例模式
    概念和作用分类7大原则工厂模式概念工厂模式是创建型模式,它是对象创建的最佳方案,特别是创建对象过程比较复杂。(如果理解new对象就可以完成功能,不需要用工厂模式)。好处实现对象的创建和使用的解耦。分类简单工厂模式简单工厂模式简介也叫静态工厂模式,可以根据不参数......
  • 从家谱的层级结构 - 组合模式(Composite Pattern)
    组合模式(CompositePattern)组合模式(CompositePattern)组合模式概述组合模式涉及的角色talkischeap,showyoumycode总结组合模式(CompositePattern)组合模式(CompositePattern)是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次关系。组......
  • 中介者模式
    实验19:中介者模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解中介者模式的动机,掌握该模式的结构;2、能够利用中介者模式解决实际问题。    [实验任务一]:虚拟聊天室在“虚拟聊天室”实例中增加一个新的具体聊天室类和一个新的具体会员类,......
  • 备忘录模式
    实验 20:备忘录模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解备忘录模式的动机,掌握该模式的结构;2、能够利用备忘录模式解决实际问题。     [实验任务一]:多次撤销改进课堂上的“用户信息操作撤销”实例,使得系统可以实现多次撤销(可以......