声明枚举类语法
public enum Size{SMALL.MEDUM,LARGE}
这样就声明了一个枚举类,包含三个枚举量,一般用大写,使用时可以这样用:
Size s=Size.LARGE;
枚举类和普通类一样也是有构造函数,也可以定义其他函数,也可以定义普通变量,静态变量等,上面定义的Size枚举类没有定义构造函数则是默认的无参构造函数,若有参数要按下面的语法:
public enum Size {
SMALL("s"),MEDIUM("m"),LARGE("l");
private String str;
private Size(String str){
this.str=str;
System.out.println("构造函数执行");
}
public String getStr(){
return str;
}
}
这里要说明的是枚举量(SMALL.,MEDIUM,LARGE)一定要在第一行定义,枚举类的构造函数必须是private 的。每个枚举值都对应一个整数值,按声明顺序从0开始,如SMALL是0,MEDIUM是1,可以调用ordinal()方法获得这个值。
还要注意的是,在你第一次引用枚举类型时,所有的枚举量都会被创建也就是说构造函数会执行,例如上面的Size在第一次引用时,构造函数会执行3次,分别建立SMALL,MEDIUM,LARGE。