参考 http://blog.csdn.net/junlinbo/article/details/18814009
举例:
public enum Color { Red, Green, Blue; /**定义一个变量表示枚举值的数目。 (我有点奇怪为什么sun没有给enum直接提供一个size方法). */ private static int number = Color.values().length; /** 随机返回一个枚举值 @return a random enum value. */ public static Color getRandomColor(){ long random = System.currentTimeMillis() % number; switch ((int) random){ case 0: return Color.Red; case 1: return Color.Green; case 2: return Color.Blue; default : return Color.Red; } } }
虽然enum不可以有public的构造函数,但是我们还是可以定义private的构造函数,
public enum Season { SPRING(1), SUMMER(2), AUTUMN(3), WINTER(4); private int code; private Season(int code){ this.code = code; } public int getCode(){ return code; } }
枚举类型是个class 可以定义多种方法