通过反射从import static获取类中的静态变量

时间:2013-09-17 12:51:51

标签: java reflection

就像标题所示,我有一堆类使用import static package.class.CONSTANT;将一些常量导入其中。现在我想通过反射从类中得到这个常量,这样可能吗?因为这显然不是给定类的字段所以ClassWithConstantImported.class.getDeclaredFields()不会给我任何东西(如果没有其他的话)字段)。有什么提示吗?

2 个答案:

答案 0 :(得分:2)

不,那是不可能的。导入程序由编译器解析,并且在编译的类中不留痕迹。您可以找到对常量的引用,但无法判断是否存在导入指令。

答案 1 :(得分:1)

这是不可能的,因为导入的常量不是导入类的类文件的一部分(但它的值可能是)。