天天看點

枚舉與靜态final

枚舉由于靜态final,因為前者比後者更安全。如下代碼:

enum ShapeType{
    RECTANGLE,TRIANGLE,OVAL
}
public class ExpTst {

    public  ShapeType type;

    public static void main(String[] args) {
        ExpTst expTst=new ExpTst();
        System.out.println(expTst.type);
        expTst.type=ShapeType.RECTANGLE;
        System.out.println(expTst.type);
    }
}      

運作輸出:

null      
class ShapeType{
    public static final int IVDIVDUAL=1;
}
public class ExpTst {

    public  int type;

    public static void main(String[] args) {
        ExpTst expTst=new ExpTst();
        System.out.println(expTst.type);
        //正常情況下
        //expTst.type=ShapeType.IVDIVDUAL;
        expTst.type=5;
        System.out.println(expTst.type);
    }
}      

繼續閱讀