本帖最后由 段浩亮 于 2012-3-18 16:36 编辑
你要是明白张老师讲枚举之前的那个模拟的例子的话 就很容易明白原因了
TrafficLamp 里面有抽象方法,新建子类对象时必须复写抽象方法,RED(30)就相当于
new TrafficLamp (30){
复写内弄
} 这是一个匿名内部类 再把它赋给TrafficLamp RED
因此 RED(30) {
public TrafficLamp nextLamp(){
eturn GREEN;
}
},这种写法就相当于把上面的写法
第二个问题中RED(30){...}就相当于枚举的一个元素,元素之间用必须用","分隔开 |