如何获取 class 文件的 class 参数
How can i get class parameters of class file
我想在编译后读取一个class的参数。我只需要名字。
例如:
public class X {
public String y;
...
}
我想将代码编译成 class 文件。然后让另一个 java 项目读取 classes 的名称,在本例中为 X
,在本例中为 class 的所有参数 y
.
我可以吗?
如果可能的话,参数是否必须是public?
谢谢。
编辑:
我尝试使用 JSystem - java 中的一个自动化框架。
为此,我是否需要读取 class 文件并读取所有 class 名称和那些参数?我希望它是可以理解的。
对于了解 JSystem 的人,我尝试制作 JRunner 但 web gui(使用 spring)。
您想使用 java 反射。下面的代码将给你一个包中的所有 classes:
Reflections reflections = new Reflections("my.project.prefix");
Set<Class<? extends Object>> allClasses = reflections.getSubTypesOf(Object.class);
然后要获取 class 的属性,您可以执行以下操作:
for (Field f : getClass().getDeclaredFields()) {
System.out.println("Field: " + f);
}
我想在编译后读取一个class的参数。我只需要名字。
例如:
public class X {
public String y;
...
}
我想将代码编译成 class 文件。然后让另一个 java 项目读取 classes 的名称,在本例中为 X
,在本例中为 class 的所有参数 y
.
我可以吗? 如果可能的话,参数是否必须是public?
谢谢。
编辑:
我尝试使用 JSystem - java 中的一个自动化框架。 为此,我是否需要读取 class 文件并读取所有 class 名称和那些参数?我希望它是可以理解的。
对于了解 JSystem 的人,我尝试制作 JRunner 但 web gui(使用 spring)。
您想使用 java 反射。下面的代码将给你一个包中的所有 classes:
Reflections reflections = new Reflections("my.project.prefix");
Set<Class<? extends Object>> allClasses = reflections.getSubTypesOf(Object.class);
然后要获取 class 的属性,您可以执行以下操作:
for (Field f : getClass().getDeclaredFields()) {
System.out.println("Field: " + f);
}