今天看关于枚举的一个小视频,不甚求解。
public enum TrafficLamp{
RED(30){
public TrafficLamp nextLamp(){
return GREEN;
}
},
GREEN(25){
public TrafficLamp nextLamp(){
return YELLOW;
}
},
YELLOW(5){
public TrafficLamp nextLamp(){
return RED;
}
};
public abstract TrafficLamp nextLamp();
private int time;
private TrafficLamp(int time){this.time = time;}
}
}
其中枚举常量后面{}中复写了抽象方法,可是这个也不是匿名内部类格式 ,求解这个是什么格式的内部类。
枚举,匿名内部类
------解决方案--------------------
其实在以前的时候是没有专门enum这个类的,以前没有enum枚举类时,他们就会采用
public static final RED=new TrafficLamp(30){
public TrafficLamp nextLamp(){
return GREEN;
}
}
这种方式来实现枚举类的功能的。我知道的也就这些了,你也不必过于纠结这些,知道这些就差不多可以了。如果还想了解的更多,再查查资料吧。