2011-12-16 9 views
3

GWTクライアント側で「定数を実装する方法」についてはわかりませんでした。Java/GWTクライアント側の定数:static final vs Enums

私はここでstackoverflowのsuch as this for exampleについていくつかの質問を見ましたが、Java 5のenum vs static finalについて話し、GWTについても言及しています。

私の質問は、GWTアプリケーションのクライアント側で定数を実装する最も軽い、そして/またはより良い方法です。

ありがとうございました。

答えて

3

もちろん、static finalは、enumよりも軽量です。しかし、静的な最終的な問題があります。 static finalをインポートするソースをコンパイルすると、最適化され、クラス内にコピーされます。これは、後でを変更すると、定数の値がに変更されたことを意味します。これは必ずしも検出されません(それ以上のインポート、再コンパイルなし)。それは列挙型では起こりません。列挙型にはより多くの用途があります。 static finalをInterfaceに配置し、省略することができます。

+0

ええと、すでに定数のstatic finalのインターフェイスを使用しています。だから、これは軽量ですが、私は列挙型で持っているスイッチケースの機能を失ってしまいました。だから、私は選択する必要があります:ライト対スイッチケースの機能...ありがとう、男! – caarlos0

関連する問題