交通灯管理系统2————————————————————————————————作者:————————————————————————————————日期:2013-11-0615:02191人阅读评论(0)收藏举报--------------android培训、java培训、学习型技术博客、期待与您交流
--------------交通灯管理系统一、题目要求模拟实现十字路口的交通灯管理系统逻辑,具体需求如:1、异步随机生成按照各个路线行驶的车辆
例如:由南向而来去往北向的车辆----直行车辆由西向而来去往南向的车辆----右转车辆由东向而来去往南向的车辆----左转车辆
2、信号灯忽略黄灯,只考虑红灯和绿灯
3、应考虑左转车辆控制信号灯,右转车辆不受信号灯控制
4、具体信号灯控制逻辑与现实生活中普通交通灯控制逻辑相同,不考虑特殊情况下的控制逻辑
5、注:1)南北向车辆与东西向车辆交替放行,同方向等待车辆应先放行直行车辆而后放行左转车辆
2)每辆车通过路口时间为1秒(提示:可通过线程Sleep的方式模拟)
3)随机生成车辆时间间隔以及红绿灯交换时间间隔自定,可以设置
4)不要求实现GUI,只考虑系统逻辑实现,可通过Log方式展现程序运行结果
二、题意分析1、对路口进行图解分析分析:1)这里总共有12条路线,每条路线作为一个对象存在
2)为了统一编程模型,可以假设每条路线都有一个红绿灯对其进行控制
3)其中右转弯的4条路线的控制灯可以假设称为常绿状态,而不能假设没有
4)另外,其他的8条线路是两两成对的,可以归为4组,所以,程序只需考虑图中标注了数字的4条路线的控制灯的切换顺序,这4条路线相反方向的路线的控制灯跟随这4条路线切换,不必额外考虑
2、面向对象的分析与设计1)对象:红绿灯,红绿灯的控制系统,汽车,路线
a、汽车看到自己所在路线对应的灯绿了就穿过路口吗