伙伴成员:李伊 http://home.cnblogs.com/u/Yililove/

对于这次作业,我刚开始一点思绪都没有,在老师安排了结对伙伴李伊之后,我的搭档问我,我们需要什么编程语言来编写程序,我细想了一下,大一到大三,我们就学了C语言、C++就这两种语言,而且C一开始果断放弃,因为没法做界面,C++也觉得不靠谱,虽然可以做界面,但是太麻烦,也指望不上。进入大三以后,自己选修过JAVA,自学过安卓,而李伊也自学过JAVA,所以用JAVA来编写电梯这个作业也就一拍即合啦。当然,在这个过程中遇到了很多问题,因为我们都是自学,对JAVA的编程思想、逻辑结构自然就没有像对C那么了解了,比如一些库函数,函数的封装等等。。。。。。

根据项目要求,一栋楼中有四部电梯,共21层,而且根据要求,第一、四部电梯可以到达所有楼层,第二步电梯可以到单层楼,第三部电梯可以到达双层楼,将这个项目在JAVA设置了六个CLASS,第一个类当然先写界面CLASS,然后再写第一部到第四步电梯的类,以及一个Show类等6个类。

可以肯定的是,在这几个类里边还有很多的函数,在这里就不一一显示,对于初学JAVA的来说,第一次就写这么大的项目,我表示吃不消啊。

而对于这次项目,使用JAVA编程自然会使界面比较好看,节省了编程时必要的文字描述和不必要的麻烦,以下图是模拟电梯的界面:

,模拟电梯的界面不仅有外部按钮还有电梯内部按钮,外部按钮可以使电梯到达乘客所在的楼层,而内部按钮可以让乘客去想去的楼层,如果乘客所在的楼层为单层或者双层时一号电梯和四号电梯随机运行在运行,当乘客在双层时第三号电梯在运行,如果第一号电梯和4号电梯同时在运行时,3号电梯启动,当乘客在双层时,而且一号电梯和4号电梯同时在运行,2号电梯启动。这其中少不了运用到线程来调度程序的运行。

其实,在这过程中,我们遇到了很多麻烦,在JAVA面前我们显得比较渺小,在时间面前我们显得比较沧桑,由于时间和能力的问题,这个项目并不是那么的完美,没有体现出项目所有的要求,比如,电梯是否超重,承载人数等这本程序中没能体现出来,因为在JAVA的容器,线程内部等等问题,我们还没办法解决。

这是单层的运行程序:

这是双层运行的程序:

由于各个类的较多,不在这里一一描述,下面来看看一号电梯的编写情况:

红色箭头是开门关门以及判断是否超重,由于能力以及时间问题,并没有很完善,不过我们相信在我们进一步接触JAVA之后,这些问题都不是问题,而且我们现在意识到JAVA在IT行业的重要性,怎敢忽视JAVA。以下图片是一号电梯运行的部分代码:

下面来运行一下程序:可以看到电梯的起始位置都是按其可以到达的楼层排放。

以下是程序的运行:当19层响应时,四号电梯随机运行,16层响应时,4号电梯还在运行,启动1号电梯运行,在1、4号电梯运行期间,如果单层响应,则运行2号电梯,双层响应,2号电梯运行。

小结:通过这次项目,意识到结对编程的重要性,以及在做项目的过程中自己知识的匮乏,由于自己能力的不足,在这次结对编程的过程中,自己始终不能委以大任,不过伙伴能力太强,自己得以虚心学习,促使自己做得更好,在下次项目中发挥更大的作用,更重要的是,让自己感觉并发现自己的不足,也让自己对结对编程充满期待以及热爱!

java模拟电梯程序_Java编写的电梯模拟系统《结对作业》相关推荐

  1. java 模拟时钟程序_java模拟时钟程序

    } clock_revise(); } final_print_out(); //时钟修正 //仿真结果打印输出 下图表示了 GPSS/JAVA 的运行逻辑初始化 程序 1. 设定仿真开始时间 2.初 ...

  2. java如何写电梯代码_JAVA编写的一个简易的电梯模型,完成电梯如何满足乘客上下楼需求(ElevatorTest)...

    [实例简介] [实例截图] [核心代码] package ele; import java.util.LinkedList; import java.util.Queue; public class ...

  3. java模拟连接超时_Java:使用Toxiproxy模拟各种连接问题

    java模拟连接超时 用Toxiproxy和Java的HttpURLConnection模拟各种连接问题,以查看产生了什么样的错误:连接超时vs.读取超时vs.连接被拒绝-. 结果: 系统:openj ...

  4. java记事本应用程序_Java教程:使用记事本编写运行Java程序

    Java教程经过上节的操作已经配置完了 Java 的开发环境,但并不清楚所配置的开发环境是否真的可以运行 Java 应用程序.为了解除这个疑虑,也为了使读者对开发 Java 应用程序的步骤有一个初步的 ...

  5. 用java做一个模拟彩票程序_JAVA模拟----- 彩票机子-----抽奖过程的实例化

    /* 时间: 2012-10-05 作者: 烟大阳仔 程序要求: 模拟彩票抽奖机的功能编写一个程序,实现随即输出六个号码 程序解释: 该段程序没有传递参数 */ class Day1005_Caipi ...

  6. java数字计算结果_Java编写程序之输入一个数字实现该数字阶乘的计算

    需求说明: 编写Java程序,输入一个数字,实现该数字阶乘的计算.一个数字的阶乘是所有小于及等于该数的正整数的积,自然数n的阶乘写作n! .例如,5的阶乘等于1*2*3*4*5,表示为5! = 120 ...

  7. java抽奖窗口程序_java模拟一个抽奖程序

    今天用一个程序模拟一个从1-32之间,随机抽取7组号码的抽奖程序 * 需要使用Java的图形界面知识 * 窗口  JFrame * 面板  JPanel * 显示文本信息的标签  JLabel * 文 ...

  8. 汉诺塔java程序_Java编写一个汉诺塔的过程

    [java]代码库/* * 需求:用Java编写一个汉诺塔的过程 * 汉若塔问题,就是把A柱子上面从大到小一次叠放的盘子借助B柱移到C柱上去,规则是一次只能移动一个盘子,大盘子不能放到小盘子之上 * ...

  9. java买票程序_Java如何编写自动售票机程序

    首先,写程序之前要先明白售票机的一个售票流程 明白了整体流程之后开始写程序: 1.为了能有一个比较好的人机交互过程,我们可以在程序的最开始加入一段提示语句: package test; import ...

最新文章

  1. python的翻译-python写的翻译代码
  2. graphicsmagick im4java,GraphicsMagick+im4java 图片处理
  3. 信息学奥赛一本通 1180 | 1946:【09NOIP普及组】分数线划定 | OpenJudge NOI 1.10 05 | 洛谷 P1068 [NOIP2009 普及组] 分数线划定
  4. loj#115. 无源汇有上下界可行流
  5. 【官方速报】360开源又一力作——KafkaBridge:让操作kafka更简单!
  6. python ping 连接_Python检查ping终端的方法
  7. 分量入度hdu 3836 Equivalent Sets
  8. [BScroll warn]: Can not resolve the wrapper DOM. Vue better-scroll
  9. 3dsmax展uv_TexTools|3dmax展UV插件(TexTools for 3ds Max)下载v4.10免费版 - 欧普软件下载
  10. python 之 libtorrent库
  11. VMWARE虚拟机使用的是此版本 VMware Workstation 不支持的硬件版本。 模块“Upgrade”启动失败。 未能启动虚拟机。
  12. T3批次结存表和库存台账和现存量数量不一致
  13. vue3 effect
  14. 存算一体文献阅读笔记二:XNOR-RRAM architecture for BNN from Shimeng Yu in ASU 2017
  15. 哈工大移动互联网复习
  16. 收敛交叉映射(convergent cross mapping,CCM)滥觞、2012年Science论文引言部分:Detecting Causality in Complex Ecosystems
  17. 计算机的操作系统的功能有哪些,操作系统的主要功能是主要有哪些类型
  18. Win11电脑怎么让两个屏幕任务栏都显示时间?
  19. android地鼠游戏,非常地鼠手游
  20. esp8266接入机智云

热门文章

  1. 韩寒:忘记自己是女人,然后借着风,像男人一样去奋斗
  2. 第十三届蓝桥杯Java B组真题
  3. FCC Truncate a string 解决方法
  4. Vue3 + 高德地图
  5. 【转载】Camera安卓源码-高通mm_camera架构剖析
  6. 超越IDM、Xdown的全能文件下载器
  7. 使用数据结构实现学生成绩管理
  8. CSS渐变颜色和浏览器前缀、opacity透明度以及设置多个背景图片写法
  9. 怎样使程序开机自启动和程序挂掉自动重启
  10. python读二进制 float_Python 二进制读文件 转换 float 失败