以前在设置常量通常是将常量放在接口中,这样可以在程序中直接使用,并且该常量不能被修改,因为在接口中定义常量时,该常量的修饰符为final和static。
将常量放在枚举类中可以达到其他值不能传入的效果,比如在一个打开门的方法中只能是妻子和丈夫进出,如果不使用枚举类定义,那这个门可以任意进出任何人,但是在枚举类中定义了妻子和丈夫两个变量,那在打开门就只能是丈夫和妻子,如果是其他人,程序就会报错。这就是枚举类的作用。
如果不使用枚举类,也可以使用定义上面常量的方法来达到效果,但是这种方法不能达到灵活的效果,因为不能改变其值,并且在程序运行时可能会出错。定义枚举类还可以举一个例子,比如一个车子在运行的时候,定义一个车子运行的方向的方法,如上下左右,在枚举类中就定义这四个变量,在方法调用的时候就会只能是这四个方向,如果车子运行不是这四个方向,程序就会报错,但如果不使用枚举类,其方向会很多,不能保证运行的方向就是这四个方向。所以这就是枚举类的最简单的直白。枚举类举例如下:
public class TestEnum { public enum MyColor { red, green, blue }; public enum MyDoorOpener {me, mywife}; public static void main(String[] args) { MyColor m = MyColor.red; switch(m) { case red: System.out.println("red"); break; case green: System.out.println("green"); break; default: System.out.println("default"); } System.out.println(m); } }