黑马程序员技术交流社区
标题:
返回值enum类型为什么只能第一行是枚举常量呢
[打印本页]
作者:
赵学刚
时间:
2012-12-15 16:38
标题:
返回值enum类型为什么只能第一行是枚举常量呢
问题:SUN(1),MON(),TUE,WED,THI,FRI,SAT;为什么在这个分号后面写 枚举常量 比如 BIGSUN;就会报错呢?
import java.util.Date;
public class EnumTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
WeekDay weekDay = WeekDay.MON;
System.out.println(weekDay.nextDay());
WeekDay weekDay2 = WeekDay.FRI;
System.out.println(weekDay2);
System.out.println(weekDay2.name());
System.out.println(weekDay2.ordinal());
System.out.println(WeekDay.valueOf("SUN").toString());
System.out.println(WeekDay.values().length);
new Date(300){};
}
public enum WeekDay{
SUN(1),MON(),TUE,WED(),THI,FRI,SAT;
private WeekDay(){System.out.println("first");}
public char[] nextDay() {
// TODO Auto-generated method stub
return null;
}
private WeekDay(int day){System.out.println("second");}
}
public enum TrafficLamp{
RED(30){
public TrafficLamp nextLamp(){
return GREEN;
}
},
GREEN(45){
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;}
}
}
复制代码
作者:
快乐之恋
时间:
2012-12-15 17:34
因为科学道理
作者:
yuchen208
时间:
2012-12-16 20:05
向enum中添加新的方法。必须在enum实例序号的最后添加一个分号。
且之前不能之前定义了任何方法或属性,不然会报错
作者:
赵学刚
时间:
2012-12-16 22:13
嗯 我知道是这个现象,只是不知道造成这个现象的原因
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2