本系统由 Lamp.java , LampController.java , Road.java 和MainClass.java组成.
Lamp.java :
package com.isoftstone.interview.traffic;
public enum Lamp {
//前进 左拐 右拐
S2N("N2S","S2W",false), S2W("N2E","E2W",false), S2E(null,null,true),
E2W("W2E","E2S",false), E2S("W2N","S2N",false), E2N(null,null,true),
N2S(null,null,false) , N2E(null,null,false), N2W(null,null,true),
W2E(null,null,false) , W2N(null,null,false), W2S(null,null,true);
String opposite;
String next;
boolean lighted;
//构造函数:初始化当前灯
private Lamp(String opposite,String next,boolean lighted){
this.opposite = opposite;
this.next = next;
this.lighted = lighted;
}
//返回当前灯的状态
public boolean isLighted(){return lighted;}
public void light(){
this.lighted = true;
if(opposite != null){
Lamp.valueOf(opposite).light();
}
System.out.println(name() + "is Green. Soon there will be cars crossed the street at six deractions.");
}
public Lamp blackout(){
//关闭当前灯 : 设为false
this.lighted = false;
Lamp nextLamp = null;
if(opposite != null){Lamp.valueOf(opposite).blackout();}
//检查下一个灯并启动它
if(next != null){
nextLamp = Lamp.valueOf(next);
System.out.println(name() + " to the " + next + " 's light is Green.");
nextLamp.light();
}
return nextLamp;
}
}
考试大温馨提示:本内容来源于网络,仅代表作者个人观点,与本站立场无关,仅供您学习交流使用。其中可能有部分文章经过多次转载而造成文章内容缺失、错误或文章作者不详等问题,请您谅解。如有侵犯您的权利,请联系我们,本站会立即予以处理。
编辑特别推荐:
Java中基本数据类型与应用
Servlet中的八大Listener
40个轻量级JavaScript库介绍
① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;
② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。