获取 Java 中所有公共字段的列表

java 8object oriented programmingprogramming

java.lang.Class.getFields() 方法返回一个字段对象数组。这些字段对象包括类对象所表示的类的可访问公共字段。

此外,如果类或接口没有可访问的公共字段,或者 Class 对象中表示的是原始类型、数组类或 void,则 getFields() 方法将返回零长度数组。

下面给出了一个演示此操作的程序 −

示例

import java.lang.reflect.*;
public class Demo {
   public static void main(String[] argv) throws Exception {
      Class c = java.lang.Thread.class;
      Field[] fields = c.getFields();
      for(int i = 0; i < fields.length; i++) {
         System.out.println("The Field is: " + fields[i].toString());
      }
   }
}

输出

The Field is: public static final int java.lang.Thread.MIN_PRIORITY
The Field is: public static final int java.lang.Thread.NORM_PRIORITY
The Field is: public static final int java.lang.Thread.

现在让我们理解上面的程序。

类 c 包含 java.lang.Thread.class。然后数组 fields[] 存储使用方法 getFields() 获取的此类的字段对象。然后使用 for 循环显示字段。演示此操作的代码片段如下 −

Class c = java.lang.Thread.class;
Field[] fields = c.getFields();
for(int i = 0; i < fields.length; i++) {
   System.out.println("The Field is: " + fields[i].toString());
}

相关文章