enum:枚举,java在JDK1.6版本时添加枚举类型,在java中枚举就是一个特殊的类(作用:让代码看起来更直观)
(枚举不能继承,枚举可以定义成员变量和成员方法,可以实现接口)
枚举与普通类区别
1.枚举不能通过new实例化对象
枚举的构造方法都是私有的
枚举不能被继承,枚举是被final修饰的
枚举不能继承类,但是可以实现接口
枚举可以在switch分支中使用 (在switch可以使用的引用数据类型只有String和枚举)
枚举默认的父类是Enum类(不再是Object)
eg:
enum Color{
//RED就是 一个Color对象
//等同于 public static final Color RED = new Color(); //默认无参构造方法(RED全局静态常量一般全大写)
//默认情况下,枚举对象都是通过默认的构造方法创建;如果我们自定了构造方法,此处就需要使用我们自定义的构造方法了
RED(1,"红色"), //RED,(默认调无参的构造方法) RED(1,"红色"), 自定义了构造方法
YELLOW(2,"黄色"),
绿色; //无参的构造方法 (此处注意不用;结尾,若之下还有内容需加;)
//自定义属性
private int index;
private String name;
//通过自定义构造方法