面向对象大作业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、用况图
西安/宝鸡车站
路线
系统使用者有西安/宝鸡车站、乘客、汽车和路线;
(1)、西安/宝鸡车站:为系统产生随机位数的乘客数,可以获得候车室的候车人数、各车型的车辆数以及在行驶中的车辆的具体位置;
(2)、乘客:上车和下车会对系统产生影响;
(3)、汽车:发车、停车以及到站都会给系统产生不同的影响;
(4)、路线:汽车发车和到站会影响路线中的车辆数。

2、类图
类有Car类、passenger类、time类、Station类和route类、Yiweike类以及Woerwo 类,其中Yiweike和Woerwo类继承Car类;Car类和Station类依赖passenger
类,又与route 类关联;Car 类和route 类是关联关系。

3、 顺序图
整个系统在工作时间内都是循环式的,每隔1分钟会产生随机人数的乘客,汽车到站后会等待下一次发车……
(1)、在工作时间内,西安/宝鸡车站的生命时间是整个工作时间,它获取候车室的候车人数、各车型的车辆数、行驶中的车辆的具体位置等;
(2)、乘客是在车站生成乘客后才有的,故其生命时间比车站晚,由于乘客是对所有乘客的总称,故其生命时间一直延续到最后一个乘客下车;
(3)、依维柯和沃尔沃:在整个工作时间内都是其生命时间,到终点站后继续等待下一次发车;
(4)、路线:在汽车发车后才产生,故比汽车的生命时间晚,一直延续到最后一辆车到达终点站。

4、 状态图
每分钟循环一次
若此战有乘客
下车则停车,否则继续行驶到下一站
此处为其他站点的省略
最后一辆车到达终
点站
整个系统有六种状态:停止工作状态、产生乘客状态、发车状态、到达下一站状态、有乘客下车状态和到达停车状态;
(1)、停止工作状态:即未到工作时间或超过工作时间时系统的状态;
(2)、产生乘客状态:即西安/宝鸡车站每分钟产生依次随机数的乘客数的状态,是一个循环状态;
(3)、发车状态:即到了依维柯或沃尔沃发车时的状态,此时乘客上车、车站候车室人数变化、车站车辆数减1;
(4)、到达下一车站状态:此时会判断有没有人下车,若有,则进入有乘客下车状态,否则继续行驶,到达下一车站继续判断,直到到达终点站,进入到站停车状态;
(5)、有乘客下车状态:停车2分钟,车上乘客数减少;
(6)、到站(即终点站)停车状态:所有乘客下车,车站(终点站)车辆加1。

5、实习中遇到的问题
刚开始以为时间类是最难的,做了以后才发现挺简单的,所以在写时间类的时候没什么困难;后来我又去帮队友写车站类,发现真正的难点在这儿,写方法还好,就是要把乘客的链表、车辆的链表加进去后,各种错误出现了,好不容易把错误改没了后,又发现链表不能用,最后我们队的另一个队友在写总控制函数时给改好了。

6、给老师的建议
希望下一次给学弟学妹们实习的时候,出一些简单一点的作业,每个人做自己的,不要组队了,因为组队后每个人写其中的一部分,各部分的难易程度不一样,而且每个人都只了解自己做的什么,最后从我们所做的系统中学到的东西也不多。

虽然团队合作很好,可我更希望在锻炼每个人的能力的时候,还是独立锻炼比较好。

7、运行截图:
8、我做的部分
我写的是时间类,即time类,这个类不难,要实现的功能很简单,时间自动增加、计算时间段等,所以在较早的时候就完成了,然后又参与到写车站类,由于车站类很复杂,所以最终还是另一个队友对它做了最后修改并“投入到”使用中;然后就是画了顺序图、用况图、状态图,也不知道画对了没,就是按照自己的想法画了;最后报告时用的PPT也有参与。

二、实验总结
总的来说,这次实验收获的挺多,首先是团队的合作很好,因为本来我们组的就是一个宿舍的,所以聚在一起比较容易,在写代码时大家合作的很好,分配
任务时都积极接受。

但是也就像我上面所提的建议一样,在做系统时,有时会因为要用到别人写的部分的代码时会不方便,或者别人写的更本就不是我想要实现的功能,所以希望即使是简单一点的题目,自己做自己的比较好,毕竟现在是锻炼个人的能力。

相关文档
最新文档