public class EnumLession16 {
public static void main(String[] args) {
WeekDay weekday=WeekDay.MON; //在这行只要是引用到枚举类名的都提示错误,很迷惑啊
System.out.println(weekday.nextday());
public enum WeekDay{ //这里提示错误 The member enum WeekDay cannot be local
SUN,MON(){
public WeekDay nextday(){
return TUE;
}
},TUE,WED,THU,FRI,SAT;
private WeekDay(){
System.out.println("first2");
}
public abstract WeekDay nextday();
private int time;
private WeekDay(int day){
System.out.println("second");
}
}
public enum TrafficLamp{ //这里提示错误 The member enum TrafficLamp cannot be local
RED{
public TrafficLamp nextlamp(){
return GREEN;
}
},
GREEN{
public TrafficLamp nextlamp(){
return YELLOW;
}
},
YELLOW{
public TrafficLamp nextlamp(){
return RED;
}
};
public abstract TrafficLamp nextlamp();
} }}请各位高人帮忙批评指正
解决方案 »
- 2个线程交替出现
- 麻烦懂C语言又懂JAVA的进来下,帮下忙
- 怎样选定列啊?我刚学JTable,看了些资料 + 查API还是没搞懂怎么弄,请大家帮忙啊
- 哪位老大解释下什么是桌面系统,谢谢!!!
- 请问,怎么才能直接调用outlook中的“新邮件”窗口,来发送邮件。如何直接将对方邮件地址传入。(比如网页上提供的该公司email发送)。
- 百分比问题
- 请教关于java源码防止反编译问题
- JAVA中的继承类型?
- 请问jbuilder 6.0.怎么好多帮助说连接不上
- 有关JBuilder6中对话框(Dialog)的问题
- 请问一下switch
- 写了个计算器程序,编译没有问题,不过按键都是得到数字9,请高手指示
我帮你改不了代码,请别人帮你改一下吧。
==============================
不只有这个问题,还有其它问题。看看他写的枚举吧:public enum WeekDay{ //这里提示错误 The member enum WeekDay cannot be local
SUN,MON(){
public WeekDay nextday(){
return TUE;
}
},TUE,WED,THU,FRI,SAT;
private WeekDay(){
System.out.println("first2");
}
public abstract WeekDay nextday();
private int time;
private WeekDay(int day){
System.out.println("second");
}
}
public WeekDay nextday(){
return TUE;
}
},TUE,WED,THU,FRI,SAT;
需要把SUN,TUE..等都实现nextday方法,不然会报错
public static void main(String[] args) {
WeekDay weekday=WeekDay.MON;
System.out.println(weekday.nextday());
}
public enum WeekDay{
SUN {
public WeekDay nextday() {
return MON;
}
},
MON(){
public WeekDay nextday(){
return TUE;
}
},
TUE {
public WeekDay nextday() {
return WED;
}
},
WED {
public WeekDay nextday() {
return THU;
}
},
THU {
public WeekDay nextday() {
return FRI;
}
},
FRI {
public WeekDay nextday() {
return SAT;
}
},
SAT {
public WeekDay nextday() {
return SUN;
}
};
private WeekDay(){
System.out.println("first2");
}
public abstract WeekDay nextday();
private int time;
private WeekDay(int day){
System.out.println("second");
}
}
public enum TrafficLamp{
RED{
public TrafficLamp nextlamp(){
return GREEN;
}
},
GREEN{
public TrafficLamp nextlamp(){
return YELLOW;
}
},
YELLOW{
public TrafficLamp nextlamp(){
return RED;
}
};
public abstract TrafficLamp nextlamp();
}
}
改成这样或许会好一点,容易理解。