java - 获取分配给字段的对象类型

标签 java reflection

我正在通过反射检查“ReflectMe”类。
使用 getDeclaredFields 方法我得到了“str”字段。

现在我需要获取将静态方法分配给该字段的类“Target”。

可能吗?

代码:

package myproj.reflect;
public class Target {
    public static final String theString = "abcd";
}

package myproj.reflect;
public class ReflectMe {
    private String str = Target.theString;
}


public static void main(String[] args) {
    ClassLoader loader = ClassLoader.getSystemClassLoader();                      
     String theclass = "myproj.reflect.ReflectMe";                   
    Class myClass = loader.loadClass(theclass);
    Field[] fields = myClass.getDeclaredFields();
}

}

换句话说,我需要获取“Target”类。

最佳答案

如果您希望通过 ReflectMe 的类定义获取 Target 类。该领域,我不认为你可以通过反射 API 做到这一点;您可以获取类定义和实例变量的值,但无法内省(introspection)表达式本身。

关于java - 获取分配给字段的对象类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13405741/

相关文章:

java - 阻止集成测试端口

java - 带有 key 提取器的 Optional<T> 比较器,如 java.util.Comparator.comparing

java - 如何在Windows命令行中正确设置类路径

java - 实体保存与谷歌数据存储不一致

c# - 如何使用带有反射的递归来研究具有循环依赖的类实例?

c# - 我们如何在 C# 中从 C++ DLL 获取所有方法?

dictionary - Go中通过反射为struct成员赋值

java - 具有空属性实例化策略的深度 bean 复制

java - 检查字符串是否包含确切的关键字

java - 无法通过反射实例化类