2014-01-28 87 views
0
Tempest(Main.m.f.classIsDefault("Tempest")); 

ClassType(something){} 

這是我的枚舉類。現在,如果每次嘗試引用它時枚舉都會更新,那麼每次引用Tempest枚舉時它會運行Main.m.f.classIsDefault(「Tempest」),還是會保存它在加載時獲取的值?將枚舉更新嗎? Java

+2

這是什麼語言? – user2357112

+0

對不起,Java。 – user3174247

+0

你可以添加更多的代碼或細節?我不確定你在問什麼。 – mdewitt

回答

3

不,枚舉常量永遠不會「更新」。當枚舉類被初始化時,所有的值都被初始化,並且永遠不會改變。它們在enum類中被實現爲static final字段。

一般來說,它應該是安全的,認爲這個代碼的...

enum Foo { 
    A(args...), B(args...); 
} 

...等價於下面的代碼,除了額外的服務,枚舉類提供:

class Foo { 
    static final Foo A = new Foo(args...): 
    static final Foo B = new Foo(args...); 
} 
+0

謝謝,這就是我需要的。 – user3174247