---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ---------------------
交通灯管理系统项目需求
交通灯管理系统项目分析:
- 一共有12个方向,东南西北四个方向都能够向其他三个方向转弯,其中只有右转不受红绿灯限制,所以还有8个方向受红绿灯限制,又因为8个方向之间是两两成对、荣辱与共的,所以实际上只要控制四个方向的灯的状态,就可以控制所有方向灯的状态了
- 每条路都应该对应一个方向,而且在这条路上的车只会朝这个方向开,路每隔一段时间就要判断灯是否是绿的,是绿的就让车走掉一个,车子属于路,所以路还得有一个不断装进车子的方法。
- 红绿灯只有4个方向的状态是需要控制的,这四个红绿灯也必须有它的附属4个方向,而且还有下一个要亮灯的方向,红绿灯的绿红(亮暗)状态由其一个布尔属性表示,所以红绿灯对象因为有控制这个布尔属性的方法,一个变亮一个变暗,并同时使其附属红绿灯也变更状态。另外在变暗的同时告诉别人下一个该变亮的红绿灯是哪个。
- 红绿灯控制器只有一个属性,当前绿灯,并每隔一段时间改变当前绿灯,新的绿灯由将要变暗的绿灯告诉红绿灯控制器。
代码就不写了,张孝祥老师网上已经给出了
友情链接:http://edu.csdn.net/news/2012822/2fa100e34e43.shtml
另外在这个视频中我学习到了一些新的知识:
1、Executors类,帮助我们提供并发线程工具
其中有一个返回ScheduledExecutorService 对象的方法,这个对象有两个方法:
scheduleAtFixedRate:每隔固定时间就开始执行下一个任务,计时从上一个任务开启开始。
scheduleWithFixedDelay: 每隔固定时间久开始执行下一个任务,计时从上一个任务结束开始。
2、NullpointException 为RuntimeException,并且当有多个线程出现该异常时,是非常难发现的,所在多线程的使用中,要多注意可能会产生空指针异常的情况。
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net