枚举的作用:
一些程序在运行时,它需要的数据不能使任意的,而必须是一定范围内的值,JDK5以前采用自定义类来解决,JDK5以后可以直接采用枚举来解决。
JDK5 以前使用自定义类的代码:
package com.feng.myemu;
public class Demo1 {
public void test(){
print(Grade.B);
}
public void print(Grade g){
}
}
class Grade{
private Grade(){}
public static final Grade A = new Grade();
public static final Grade B = new Grade();
public static final Grade C = new Grade();
public static final Grade D = new Grade();
public static final Grade E = new Grade();
}
采用枚举的代码:
package com.feng.myemu;
public class Demo1 {
public void test(){
print(Grade.B);
}
public void print(Grade g){
}
}
enum Grade{//class
A,B,C,D,E;//Object
}
在关键字enum后的名字相当于自定义的类名,而在花括号中的内容,相当于用那个类在类内部new出来的对象。