【发布时间】:2015-06-16 01:25:14
【问题描述】:
enum Day{ SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY}
class Enum1 {
public static void main(String args[]) {
Day day=Day.MONDAY;
switch(day) {
case SUNDAY:
System.out.println("sunday");
break;
case MONDAY:
System.out.println("monday");
break;
default:
System.out.println("other day");
}
}
}
我在编译这段代码时看到了Enum1.class、Day.class 和Enum1$1.class。当我注释掉 switchcase 部分时,只会生成 Enum1.class 和 Day.class。
switchcase 中产生额外Enum1$1.class 文件的原因是什么?
【问题讨论】:
-
javap -verbose Enum1$1.class可以向您显示该类文件的内容,这可能是一个线索。
标签: java class enums switch-statement