获取类中的所有变量名称

2022-08-31 10:08:22

我有一个类,我想找到它的所有公共字段(而不是方法)。我该怎么做?


答案 1
Field[] fields = YourClassName.class.getFields();

返回类的所有公共变量的数组。

getFields()返回整个类继承中的字段。如果只想在相关类中定义字段,而不在超类中定义字段,请使用 ,并使用以下方法筛选这些字段:getDeclaredFields()publicModifier

Modifier.isPublic(field.getModifiers());

文本实际上表示 java.lang.Class 类型的对象。查看其文档以获取更多有趣的反射方法。YourClassName.class

上面的类是java.lang.reflect.Field。你可以看看整个java.lang.reflect包。Field


答案 2

https://docs.oracle.com/javase/tutorial/reflect/class/classMembers.html 还具有用于查找方法和构造函数的图表。

enter image description here