2012-09-28 62 views
5

我有一个关于Java中的Enums的简单问题请参考下面的代码。像PropName .CONTENTS这样的实例何时被实例化?什么时候创建Enum实例?

public enum PropName { 

    CONTENTS("contents"), 
    USE_QUOTES("useQuotes"), 
    ONKEYDOWN("onkeydown"), 
    BROWSER_ENTIRE_TABLE("browseEntireTable"), 
    COLUMN_HEADINGS("columnHeadings"), 
    PAGE_SIZE("pageSize"), 
    POPUP_TITLE("popupTitle"), 
    FILTER_COL("filterCol"), 
    SQL_SELECT("sqlSelect"), 
    ; 

    private String name; 

    private PropName(String name) { 
    this.name = name; 
    } 

    public String getName() { 
    return name; 
    } 
} 
+2

它是在加载类时创建的。但为什么这个问题呢?你有什么问题? –

回答

6

它是在类加载时创建的,就像任何静态代码块一样。

3

当PropName类被类加载器加载时。枚举常量是它们类的静态最终字段。

相关问题