1 enum MyColor { red, green, blue}
2
3 public class TestEnum {
4
5 public static void main(String[] args) {
6 MyColor m = MyColor.blue;
7
8 switch(m) {
9 case red:
10 System.out.println("red");
11 break;
12 case green:
13 System.out.println("green");
14 break;
15 case blue:
16 System.out.println("blue");
17 break;
18 default:
19 System.out.println("default");
20 break;
21 }
22
23 System.out.println(m);
24 }
25 }
26
2
3 public class TestEnum {
4
5 public static void main(String[] args) {
6 MyColor m = MyColor.blue;
7
8 switch(m) {
9 case red:
10 System.out.println("red");
11 break;
12 case green:
13 System.out.println("green");
14 break;
15 case blue:
16 System.out.println("blue");
17 break;
18 default:
19 System.out.println("default");
20 break;
21 }
22
23 System.out.println(m);
24 }
25 }
26
TestEnum類編譯后,會產生三個class文件:MyColor.class、TestEnum$1.class、TestEnum.class。
枚舉就相當于一個類,所以會有MyColor.class。問題是:為什么會出現TestEnum$1.class這個匿名類。難道是枚舉類中使用的red, green, blue三個值造成的。
那位大俠知道,給小弟解釋一下,先謝謝了!
