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