package com.md16;import java.io.Serializable;public enum TrafficLight implements Serializable {
RED(30){       
public TrafficLight next(){
return GREEN;
}
},
AMBER(10){
public TrafficLight next(){
return RED;
}
},
GREEN(10){
public TrafficLight next(){
return AMBER;
}
};
private final int duration;
private TrafficLight(int duration){
this.duration=duration;
}
public int duration(){
return duration;
}
public abstract TrafficLight next();

public static void main(String args[]){
for(TrafficLight light:TrafficLight.values()){
System.out.println(light);
System.out.println("\t"+light.duration());
System.out.println("\t"+light.next());
}

//打印出的路径为何不同
System.out.println(TrafficLight.class);
System.out.println(TrafficLight.RED.getClass());
System.out.println(TrafficLight.AMBER.getClass());

}
}