可以看出枚举时和类平级的,是定义类级别的关键字
因为枚举都是直接用.xxx的形式,所以里面的值等都是静态的!!!
但是其也有get和set方法,构造方法等
常量
枚举(enum)类型是Java 5新增的特性,它是一种新的类型,允许用常量来表示特定的数据片断,而且全部都以类型安全的形式来表示。
所有的枚举都继承自java.lang.Enum类。由于Java 不支持多继承,所以枚举对象不能再继承其他类(可以实现接口)。
在JDK1.5之前,我们定义常量都是:public static fianl…。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。
代码演示:
package com.example.dtest.enum00;/*
* 枚举添加新方法
* */
public enum Color {RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);// 成员变量private String name;private int index;// 构造方法private Color(String name, int index) {this.name = name;this.index = index;}// 普通方法public static String getName(int index) {for (Color c : Color.values()) {if (c.getIndex() == index) {return c.name;}}return null;}// get set 方法public String getName() {return name;}public void setName(String name) {this.name = name;}public int getIndex() {return index;}public void setIndex(int index) {this.index = index;}public static void main(String[] args) {System.out.println(Color.getName(1));}}
简单枚举:
package com.example.dtest.enum00;/*
* 枚举产量定义
* */
public enum WeekDay {SUN, MON, TUE, WED, THT, FRI, SAT;public static void main(String[] args) {System.out.println(WeekDay.SUN);}}