我怎样才能获得类文件的类参数

时间:2018-04-28 23:05:44

标签: java jsystem

我想在编译后读取类的参数。我只需要这些名字。

例如:

public class X {
   public String y;
   ...
}

我想将代码编译为类文件。然后让另一个java项目读取本例X中的类的名称以及本例y中所有类的参数。

我能做到吗? 如果可能,参数必须公开吗?

感谢。

修改

我尝试使用JSystem - java中的自动化框架。 为此,我是否需要读取类文件并读取所有类名和那些参数?我希望它是可以理解的。

对于了解JSystem的人来说,我试图制作JRunner而不是web gui(春天)。

1 个答案:

答案 0 :(得分:2)

您想要使用java反射。以下代码将为您提供包中的所有类:

 Reflections reflections = new Reflections("my.project.prefix");

 Set<Class<? extends Object>> allClasses = reflections.getSubTypesOf(Object.class);

然后,要获取类的属性,您可以执行以下操作:

 for (Field f : getClass().getDeclaredFields()) {
    System.out.println("Field: " + f);
  }