学习面向对象编程和Java设计模式的过程中,为了增强学习的趣味性,我突发奇想:Java思想十分符合生活哲学,如果使用Java程序来描述世间万物,不仅能加强记忆,还能锻炼对编程的架构能力。于是,《Java之模拟人生》系列博文就诞生了。

初始化机房...
电脑编号为1001
小明进入了编号为1机房...
编号为1001的电脑可以使用...
电脑开机了...
===============
编号为1001的电脑正在开机状态...
电脑关机了...
小明离开了编号为1机房...
package com.gwx.www.classrelation.studentusercomputerinroom;/*** 测试类* 2019/5/8* Guowx*/
public class Test {public static void main(String[] args) {//创建机房对象ComputerRoom room = new ComputerRoom(1);// 初始化机房room.init();// 创建学生对象Student sdt = new Student("小明");// 学生进入机房room.welcomeIn(sdt);System.out.println("===============");// 学生离开机房room.welcomeOut(sdt);}}
package com.gwx.www.classrelation.studentusercomputerinroom;/*** 电脑类** 2019/5/8* Guowx*/
public class Computer {// 电脑的状态,默认关闭private boolean status = false;// 电脑编号private int cpcode;public Computer() {}public Computer(int code) {this.cpcode = code;}/*** 设置电脑编号* 2019/5/10* @author  Guowx* @param code 电脑编号*/public void setCode(int code) {this.cpcode = code;}/*** 获取电脑编号* 2019/5/10* @author  Guowx* @return int电脑编号*/public int getCpcode() {return this.cpcode;}/*** 电脑被打开* 2019/5/10* @author  Guowx*/public void isOpen() {this.status = true;System.out.println("电脑开机了...");}/*** 电脑被关闭* 2019/5/10* @author  Guowx*/public void isClosed() {this.status = false;System.out.println("电脑关机了...");}/*** 获取电脑的状态* 2019/5/10* @author  Guowx* @return  false电脑关闭状态,true电脑开启状态*/public boolean getStatus() {return this.status;}}
package com.gwx.www.classrelation.studentusercomputerinroom;/*** 机房类** Guowx* 2019/5/10*/
public class ComputerRoom {// 机房编号private int rcode;// 机房的电脑private Computer c;public ComputerRoom() {}public ComputerRoom(int code) {this.rcode = code;}/*** 初始化机房,给电脑编上编号* 2019/5/10* @author  Guowx*/public void init() {System.out.println("初始化机房...");this.c = new Computer();// 给电脑编号this.c.setCode(1001);System.out.println("电脑编号为" + 1001);}/*** 机房进入学生* 2019/5/10* @author  Guowx* @param std 学生对象*/public void welcomeIn(Student std) {System.out.println(std.getName() + "进入了编号为" + this.rcode + "机房...");// 学生使用电脑std.use(c);}/*** 学生离开机房* 2019/5/10* @author  Guowx* @param std 学生对象*/public void welcomeOut(Student std) {// 学生离开电脑std.leave(c);System.out.println(std.getName() + "离开了编号为" + this.rcode + "机房...");}}
package com.gwx.www.classrelation.studentusercomputerinroom;/*** 学生类** 2019/5/8* Guowx*/
public class Student {// 学生姓名private String name;public Student() {}public Student(String name) {this.name = name;}/*** 学生离开电脑* 2019/5/10* @author  Guowx* @param c 电脑对象*/public void leave(Computer c) {if (c.getStatus()) {// 如果电脑是开启的,要关闭电脑System.out.println("编号为" + c.getCpcode()+ "的电脑正在开机状态...");this.close(c);} else {// 如果电脑是关闭的,直接离开System.out.println("编号为" + c.getCpcode()+ "的已经关闭...");}}/*** 学生使用电脑* 2019/5/10* @author  Guowx* @param c 电脑对象*/public void use(Computer c) {if (c.getStatus()) {// 如果电脑是开启的,说明有人使用,不可用System.out.println("编号为" + c.getCpcode() + "的电脑被使用了,请换一台...");} else {// 如果电脑是关闭的,可以使用,打开电脑System.out.println("编号为" + c.getCpcode() + "的电脑可以使用...");this.open(c);}}/*** 打开电脑* 2019/5/10* @author  Guowx* @param c 电脑对象*/private void open(Computer c) {c.isOpen();}/*** 关闭电脑* 2019/5/10* @author  Guowx* @param c 电脑对象*/private void close(Computer c) {c.isClosed();}/*** 获取学生的姓名* 2019/5/10* @author  Guowx* @return 学生姓名*/public String getName() {return this.name;}}

Java之模拟人生(一)小明上机相关推荐

  1. Java编程输入学员小明3门课程成绩,编写程序实现

    题目: (1)Java课和SQL课的分数之差 (2)3门课的平均分 答案: package project4; public class Test { public static void main( ...

  2. 【蓝桥杯06】:给定小明的城堡图,请问,水的高度依次为1,2,3,....,H时,有多少块积木要被水淹。

    问题描述: 小明用积木搭了一个城堡.         为了方便,小明在搭的时候用的是一样大小的正方体积本,搭在了一个n行m列的方格图上,每个积木正好占据方格图的一个小方格.         当然,小明 ...

  3. 小明打游戏(Java)

    小明在玩升级打怪游戏,这个游戏可以让玩家选择从第i关连续打到第j关(i<=j),每打过一关都会奖励金币或扣除金币.已知每一关奖励或扣除的金币数,小明应该选择从第几关连续打到第几关,才能获得最多金 ...

  4. CCF之小明上学——2018.12 第一题 (java满分代码)

    package Question_one; /*  * 小明上学  * 题目背景 小明是汉东省政法大学附属中学的一名学生,他每天都要骑自行车往返于家和学校.为了能尽可能充足地睡眠,他希望能够预计自己上 ...

  5. Java 第十一届 蓝桥杯 省模拟赛 小明的城堡

    小明用积木搭了一个城堡. 为了方便,小明在搭的时候用的是一样大小的正方体积本,搭在了一个 n 行 m 列的方格图上,每个积木正好占据方格图的一个小方格. 当然,小明的城堡并不是平面的,而是立体的.小明 ...

  6. Java 第十一届 蓝桥杯 省模拟赛 小明植树(DFS)

    小明植树 题目 问题描述 小明和朋友们一起去郊外植树,他们带了一些在自己实验室精心研究出的小树苗. 小明和朋友们一共有 n 个人,他们经过精心挑选,在一块空地上每个人挑选了一个适合植树的位置,总共 n ...

  7. Java 小明同学最近开发了一个网站,在用户注册账户的时候,需要设置账户的密码

    题目:小明同学最近开发了一个网站,在用户注册账户的时候,需要设置账户的密码,为了加强账户的安全性,小明对密码强度有一定要求: 1. 密码只能由大写字母,小写字母,数字构成: 2. 密码不能以数字开头: ...

  8. CCF201812-2 小明放学(JAVA)

    问 题 描 述: 题目背景 汉东省政法大学附属中学所在的光明区最近实施了名为"智慧光明"的智慧城市项目.具体到交通领域,通过"智慧光明"终端,可以看到光明区所有 ...

  9. 小明走格子 (10 分)(Java)

    从A点到B点有n个格子,小明现在要从A点到B点,小明吃了些东西,补充了一下体力,他可以一步迈一个格子,也可以一步迈两个格子,也可以一步迈3个格子,也可以一步迈4个格子.请编写程序计算小明从A点到B点一 ...

最新文章

  1. AI 语言模型真的是越大越好吗?这个模型优于 Gopher
  2. DNNBrain:北师大团队出品,国内首款用于映射深层神经网络到大脑的统一工具箱...
  3. 2021-06-04
  4. Java 虚拟机导论:什么是 Java虚拟机
  5. MyBatisPlus中常用条件构造器示例代码
  6. 【BZOJ 1266】 [AHOI2006]上学路线route
  7. 文本怎么整体向左缩进_如何设置Word文档的左缩进或者右缩进呢?并在缩进区域输入文字...
  8. 在StackBlitz上setup SAP Spartacus
  9. 内网通广告弹窗怎么关掉_人民日报批弹窗广告!“弹窗广告”怎么关闭 弹窗广告去除拦截方法...
  10. delegate和protocol
  11. js如何判断访问来源是来自搜索引擎(蜘蛛人)还是直接访问
  12. Java面试题:final和Object类常见的方法
  13. SqlAlchemy操作(一)
  14. 实对称矩阵的特征值求法_对称矩阵、对角矩阵与三角矩阵
  15. 成功解决生意参谋中transit-id和加密数据date
  16. Flotherm 2021热仿真分析基础到高级视频教程
  17. iphone13怎么安装双卡(双卡功能)
  18. 三阶魔方中心互换_魔方中的数学2-置换的定义
  19. [RFID]IC卡克隆(四)Proxmark3全卡克隆已解密的IC卡
  20. 前端调取.net core webapi 报错:“...CORS policy: Response to preflight request ...“的问题成因和解决办法。

热门文章

  1. ili9341显示屏--时钟
  2. 从工行漏洞看国内银行金融网站
  3. 用特殊符号拼出漂亮的表格
  4. 计算机绘图自考知识点,湖南自考本科07885图学与计算机绘图考试大纲 - 湖南自考生网...
  5. 美容院双十二促销活动怎么做
  6. 华中农业大学第六届程序设计大赛网络同步赛 J.幻化(思维)
  7. 2023年前端开发趋势未来可期
  8. 说说重构那些小事二:小视频落地页重构二期
  9. 【意识与意识障碍定义与分类】意识障碍患者的分类与特征
  10. springCloud-40 restTemplate 整合sentinel 实现熔断