java课程设计报告(模拟电梯系统).docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java课程设计报告(模拟电梯系统)

Java课程设计报告 组号:第四组 课题名称:模拟电梯调度 班级:09计一 课题组成员姓名及学号:课程设计日期:2011.6.20-2011.6.24 地点:秋白楼B720 一.正文 1)[课程设计目的与要求] 目的 掌握线程的应用及线程在多媒体中的使用,了解线程的运行机制和线程的新建、就绪、运行、挂起、死亡五种状态,对线程由新的认识和巩固。熟练java的动画编程,理解repaint()方法的调用过程及如何通过改写update()方法和双缓冲技术消除动画中出现的闪烁现象。理解java的容器和组件的应用。掌握java的事件处理机制:实现ActionListener接口,对事件源添加侦听器,实现actionPerformed()方法用以处理事件源所产生的事件。另外使组员能够针对具体的有一定代表性的小型综合应用类课题设计、分析,全面掌握面向对象的思想、JAVA语言的应用技巧、方法,从而使组员进一步理解和掌握利用JAVA开发综合系统的过程,学会用java开发工具,同时培养组员的合作意识和团队精神,培养学生对实际系统的采用面向对象的方法进行分析与设计能力,从而使学生提高JAVA语言运用与开发的综合能力。 需求分析 模拟电梯调度:有一栋三层的楼房,楼内有三个电梯。要求电梯实现可以正常上下,和到达目的楼层后即停留并且实现开门及关门动作。 电梯需有多层停留功能即:当对同一个电梯需要其在多层都有下客时,电梯要在有下客动作的楼层停留然后自动去下一个有下客动作的楼层,而不需要乘客在次发出请求。 电梯具有距离发出请求的楼层最近的电梯响应请求的功能即:当某一楼层有乘客需要使用电梯时,由距离该楼层最近的电梯去响应,而不是任意一个电梯都可以响应。(注:当存在距离该楼层最近的电梯且该电梯正在远离该楼层运动时该电梯不响应,当存在多个电梯距离该楼层最近时由编号低的电梯响应而不是全都响应。 2)[本人在课程设计中承担的任务] 在课程设计中我主要负责事件处理,并判断该事件是何种事件,需要做出怎样的响应。同时确定各电梯的工作状态,以及判断该事件是否应该得到响应若响应该事件那么应由哪一个电梯去响应。当然我所做的还有判断哪一个电梯距离发出请求的楼层最近,此时由距离该楼层最近的电梯响应请求,若距离最近的电梯处于远离该楼层的运动状态时则由下一个最近的电梯响应,若存在多个电梯距离最近,那么由编号低的响应。总的来说我的工作是考虑各种情况下给控制电梯各种动作(上、下、开门、关门、电梯响应、楼层)的变量赋予正确的值以实现电梯的正常运作。 3)[程序中使用的数据结构及符号说明] 由于电梯有三个楼层也有三层,所以要实现各电梯之间互不影响就需要由不同的变量去控制电梯的动作。这也是为什么程序中变量较多的原因。 下面是对本段程序中使用到得变量的解释说明: Object str:获取的组件信息赋予str(按钮名)。 String st:获取的组件信息赋予st(按钮上的内容)。 int a,b,c:三个临时变量,主要用于记录各电梯当前位置(y1,y2,y3)oolean moving1,moving2,moving3:记录电梯的状态,moving1、moving2、moving3各对应一二三号电梯。值为true时电梯处于动作状态(上下或开关门),值为false时电梯处于静止状态。 boolean open1,open2,open3:电梯的开门关门控制变量,open1、open2、open3各控制一二三号电梯的开关门动作。值为true时允许电梯开门,值为false时允许电梯关门。 int a1,a2,a3,b1,b2,b3,c1,c2,c3:记录各电梯响应的楼层信息,与n1[],n2[],n3[]用处差不多,但不可少。a1、a2、a3分别对应n1[0]、 n1[1]、n1[2]以此类推b,c对应n2,n3。其主要目的是当电梯到达最后一个目的楼层后将电梯的有效信息number[]的值设置为0。这是n1[],n2[],n3[]无法做到的,应为在到达相应的目的楼层后n1[],n2[],n3[]中的相应值也就设置为0了。 Button bt1··· :各组件(各楼层及各电梯的按钮)。 4)[程序流程图] 由于此程序中情况众多,因此流程图中的判断框较多也较复杂。下面给出一个较简单的流程图。 5)[程序运行时的初值和运行结果] 程序开始运行时,未点击任何按钮所以对于我的程序部分来说不存在初始值,只有y1=440,y2=440,y3=440 open1=false,open2=false,open3=false moving1=false,moving2=false,moving3=false n1[]={0,0,0},n2[]={0,0,0},n3[]={0,0

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档