这节从张老师的视频中学到的最有心得是面向对象设计思想在实际当中的具体应用,一个具体的案例,情况肯能十分复杂,就拿交通灯来说,没有听老师分析之前,不知道从何下手,感觉十分繁杂理不清头绪。 而听了张老师的讲解,好多找不到北的问题都迎刃而解。 首先总体上我们只需要设计两个类: lamp类中我们分析了12种灯的特点,根据他们的对应关系和之间的联系分成了3组灯,对组进行操作,从而简化了问题的复杂性。而后在该类中实现了交通灯表换的方法。外部类只需要传值调用即可。 road类中我们实现了在路上随机产生车辆,并在某种条件下放行车辆。 而后,控制器类中定义初始情况,并用定时器使红绿的交替的效果运行起来。之后在主函数根据12种lamp情况产生与之对应的12个路的对象。调用控制器。
以上总结了交通灯管理系统的大体设计思路,在具体代码设计上,lamp类的设计运用了枚举类型,程序中多处运用了java新特性中线程的使用等等很多都是程序的亮点,以后找时间细细学习老师解决的问题。希望明天可以通过入学考试,争取赶上第一期班。