3

何百もの構成定数を持つJavaプログラムがあります。

public static final String C1="C1";
public static final String C2="C2";

数が非常に多いので、別のクラスに分けましたMyClassConstants。今、私はそれらを使用する必要がありますMyClass:

import mynamespace.MyClassConstants;
myMethod( MyClassConstants.C1, MyClassConstants.C2 );

これは非常に速く非常に冗長になるため、どうにかしてフィールドを直接インポートできるかどうか疑問に思っていました:

import mynamespace.MyClassConstants.*; 
myMethod( C1, C2 ); //doesn't work

または、少なくとも、インポートの名前を変更します。

import mynamespace.MyClassConstants as C; //javac hates me
myMethod( C.C1, C.C2 );

しかし、この後のアプローチは不可能のようです

これを行う方法はありますが、定数に意味のあるクラス名を付けることはできますか? または、別のアプローチを使用する必要がありますか?

4

3 に答える 3

6

答えはStatic importです。それを使用して解決できます。

import static mynamespace.MyClassConstants.*;

も参照してください

于 2013-10-02T10:20:21.487 に答える
6

試す

import static mynamespace.MyClassConstants.*;

それから

myMethod( C1, C2 );  should work
于 2013-10-02T10:13:58.837 に答える
3

静的インポートする必要があります。詳細はこちらhttp://javapapers.com/core-java/what-is-a-static-import-in-java/

あなたはそれを次のように持っています:import static mynamespace.MyClassConstants.*;

于 2013-10-02T10:14:09.603 に答える