---------------------- android培训、java培训、期待与您交流! ----------------------
Java枚举类型是从JavaSE 5.0 版本开始出现的,它允许限制一个变量只能具有几个预定义的值中的某个值 。
枚举类型有利于减少代码中的bug , 使得在编译器阶段便可以保证定义的变量在预测范围之类。
Demo code :
public class EnumTest {
//枚举变量全都大写并不是必须的,但依据Sun的编码规范,常量需要大写
//枚举的声明方式如下所示,但枚举不能在方法内声明它们
enum Coffee{ BIG , MIDDLE , SMALL };
//或声明为:enum Coffee{ BIG , MIDDLE , SMALL; };
public static void main(String[] args) {
System.out.println(Coffee.BIG);
}
}
可以只用public 或默认修饰符声明类外的枚举:
class Coffee2{
enum Coffee{ BIG , MIDDLE , SMALL };
Coffee size ;
}
public class EnumTest {
public static void main(String[] args) {
Coffee2 drink=new Coffee2();
drink.size=Coffee2.Coffee.BIG;
}
}
枚举还可以为自己添加构造函数、实例变量、方法以及“常量特定类体”(constant specific class body)
public class EnumTest {
enum CoffeeSize{
BIG(16){
public String getLidCode(){
return "Big";
}
},
MIDDLE(10) ,
SMALL(8){
public String getLidCode(){
return "Small";
}
} ;
CoffeeSize(int bounce){
this.bounce=bounce;
}
private int bounce;
public int getBounce(){
return this.bounce;
}
public String getLidCode(){
return "A";
}
};
public static void main(String[] args) {
System.out.println(CoffeeSize.BIG.getBounce());
System.out.println(CoffeeSize.SMALL.getLidCode());
}
}
输出结果为:
16
Small
---------------------- android培训、java培训、期待与您交流! ----------------------