0
Tempest(Main.m.f.classIsDefault("Tempest"));
ClassType(something){}
這是我的枚舉類。現在,如果每次嘗試引用它時枚舉都會更新,那麼每次引用Tempest枚舉時它會運行Main.m.f.classIsDefault(「Tempest」),還是會保存它在加載時獲取的值?將枚舉更新嗎? Java
Tempest(Main.m.f.classIsDefault("Tempest"));
ClassType(something){}
這是我的枚舉類。現在,如果每次嘗試引用它時枚舉都會更新,那麼每次引用Tempest枚舉時它會運行Main.m.f.classIsDefault(「Tempest」),還是會保存它在加載時獲取的值?將枚舉更新嗎? Java
不,枚舉常量永遠不會「更新」。當枚舉類被初始化時,所有的值都被初始化,並且永遠不會改變。它們在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...);
}
謝謝,這就是我需要的。 – user3174247
這是什麼語言? – user2357112
對不起,Java。 – user3174247
你可以添加更多的代碼或細節?我不確定你在問什麼。 – mdewitt