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 回答