2012-12-08 70 views

回答

2

是的,枚舉類型的文字是public static final變量。

簡化,它看起來像這樣:

public final enum FooEnum { 
    A, B 
} 

public final class BarEnum { 
    public static final BarEnum A = new BarEnum(); 
    public static final BarEnum B = new BarEnum(); 
} 

在現實中,還有更多的東西在那裏,比如所有枚舉文字的列表,一個字符串標識符(枚舉值知道它name)的序數和一個私有構造函數,以防止實例化(全部省略了代碼的清晰,因爲問題是僅繞static

+1

有一個重要的區別,你的文章沒有指出:BarNum的構造函數應該是私有的。 – arshajii

+0

謝謝,因爲它對枚舉非常重要,所以添加爲備註。 – mhaller