作业代码:https://coding.net/u/liyi175/p/Dianti/git

伙伴成员:李伊 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编写的电梯模拟系统《结对作业》的更多相关文章

  1. 第四,五周——Java编写的电梯模拟系统(结对作业)

    作业代码:https://coding.net/u/liyi175/p/Dianti/git 伙伴成员:石开洪 http://www.cnblogs.com/shikaihong/(博客) 这次的作业 ...

  2. Core 第三组 结对作业——四则运算 Part1. Core代码编写

    结对作业——四则运算 Part1. Core代码编写 PB15061303 刘梓轩PB16061489 艾寅中 GITHUB 地址 戳这里 目录 (因为内容较多,分为了三个部分,但作业系统中只能提交一 ...

  3. 结对作业——四则运算 Part3. 对于结对编程的总结与思考

    结对作业——四则运算 Part3. 对于结对编程的总结与思考 PB15061303 刘梓轩PB16061489 艾寅中 GITHUB 地址 戳这里 目录 Part 1. Core代码编写部分 Part ...

  4. 201621123062《java程序设计》第13周作业总结

    1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 思维导图: 2. 为你的系统增加网络功能(购物车.图书馆管理.斗地主等)-分组完成 为了让你的系统可以被多 ...

  5. 第6次结对作业--郑锦伟&古维城

    第6次结对作业 在线英语学习平台客户端原型 1.结对成员 郑锦伟 2015034643034 古维城 2015034643033 2.原型设计工具实现-Photoshop 3.需求分析 使用NABCD ...

  6. [2019BUAA软件工程]结对作业

    Tips Link 作业链接 [2019BUAA软件工程]结对作业 GitHub地址 WordChain PSP表格 psp2.1   预估耗时(分钟) 实际耗时(分钟) Planning 计划 60 ...

  7. 结对作业——随机生成四则运算(Core 第7组)

    结对作业 ——随机生成四则运算(core第7组) 吕佳玲 PB16060145 涂涵越 PB16060282 GITHUB地址 https://github.com/hytu99/homework_2 ...

  8. 结对作业(1.0版)(bug1已修复)

    import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing ...

  9. 结对作业——web四则运算

    目录: 一.Coding.net项目地址 二.PSP 三.接口设计 四.接口实现 五.性能分析 六.单元测试 七.异常处理 八.模块设计 九.模块对接 十.结对 十一.思考 十二.PSP 网站:htt ...

随机推荐

  1. lua表类型

    Lua的表的定义: typedef struct Table { CommonHeader; lu_byte flags; lu_byte lsizenode; /* log2 of size of ...

  2. mssqlserver的md5函数

    参考:https://www.cnblogs.com/JuneZhang/p/6396896.html?utm_source=itdadao&utm_medium=referral 简单说明: ...

  3. 大数据入门第十一天——hive详解(二)基本操作与分区分桶

    一.基本操作 1.DDL 官网的DDL语法教程:点击查看 建表语句 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data ...

  4. 使用uliweb创建一个简单的blog

    1.创建数据库 uliweb的数据库都在models.py文件里面,因此先创建该文件 vim apps/blog/models.py 添加如下两行: #coding=utf-8 from uliweb ...

  5. C# 用QQ企业邮箱发邮件

    问题System.Net.Mail下的SmtpClient来发送邮件,而System.Net.Mail only仅支持Explicit SSL 不要465端口,用25,不用EnableSsl = tr ...

  6. Python3抓取javascript生成的html网页

    用urllib等抓取网页,只能读取网页的静态源文件,而抓不到由javascript生成的内容. 究其原因,是因为urllib是瞬时抓取,它不会等javascript的加载延迟,所以页面中由javasc ...

  7. 洛谷 P1762 偶数

    洛谷 P1762 偶数 题目描述 给定一个正整数n,请输出杨辉三角形前n行的偶数个数对1000003取模后的结果. 输入输出格式 输入格式: 一个数 输出格式: 结果 输入输出样例 输入样例#1:   ...

  8. 3503: [Cqoi2014]和谐矩阵

    3503: [Cqoi2014]和谐矩阵 链接 分析: 对于每个点,可以列出一个方程a[i][j]=a[i][j-1]^a[i][j+1]^a[i-1][j]^a[i+1][j],于是可以列出n*m个 ...

  9. P4438 [HNOI/AHOI2018]道路

    辣稽题目 毁我青春 耗我钱财. 设\(f[x][i][j]\)为从1号点走到x点经过i条公路j条铁路,子树的最小代价. \(f[leaf][i][j]=(A+i)(B+j)C\) \(f[x][i][ ...

  10. 【BZOJ 2132】圈地计划 && 【7.22Test】计划

    两种版本的题面 Description 最近房地产商GDOI(Group of Dumbbells Or Idiots)从NOI(Nuts Old Idiots)手中得到了一块开发土地.据了解,这块土 ...