Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 导入的常量类字段的短名称_Java_Boilerplate - Fatal编程技术网

Java 导入的常量类字段的短名称

Java 导入的常量类字段的短名称,java,boilerplate,Java,Boilerplate,我有一个包含数百个配置常量的java程序: public static final String C1="C1"; public static final String C2="C2"; 因为它们太多了,我把它们放在一个单独的类中,MyClassConstants。 现在,我需要在MyClass上使用它们: import mynamespace.MyClassConstants; myMethod( MyClassConstants.C1, MyClassConstants.C2 ); 这会

我有一个包含数百个配置常量的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 );
但是

有没有一种方法可以做到这一点,并且仍然为常量提供一个有意义的类名?或者我应该使用另一种方法吗?

试试看

import static mynamespace.MyClassConstants.*;
然后

您应该进行静态导入。 更多细节在这里


类似于:
import static mynamespace.MyClassConstants.*

答案是
静态导入
,您可以使用它来解决:

导入静态mynamespace.MyClassConstants.*

另见


试试
import static
这些常量相关吗?@ronnk这很快,正是我想要的!考虑把它作为一个答案。A可能有用too@RohitJain是的,它们在概念上是不可分割的
myMethod( C1, C2 );  should work