getFields()
方法getFields()方法在java.lang包中可用。
getFields()方法用于返回一个Field对象数组,这些对象指示此Class对象表示的类或接口的所有公共Field。
getFields()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
在返回Field对象数组时,getFields()方法可能会引发异常。
SecurityException:在此异常中,当安全管理器存在时可能会引发此异常。
语法:
public Field[] getFields();
参数:
它不接受任何参数。
返回值:
此方法的返回类型为Field [],它返回一个Field对象数组,该数组表示此类或接口的所有公共字段。
注意:
当类或接口不包含公共字段时,将返回0。
当此类对象包含基本类型,数组类或void类型时,将返回0。
示例
// Java program to demonstrate the example // of Field[] getFields () method of Class import java.lang.reflect.*; public class GetFieldsOfClass { public static void main(String[] args) throws Exception { GetFieldsOfClass fields = new GetFieldsOfClass(); // Get Class Class cl = fields.getClass(); // 它返回一个 Field 对象数组,该数组指示 // 类表示的公共字段 Field[] f = cl.getFields(); for (int i = 0; i < f.length; ++i) System.out.println("Public Fields: " + f[i].toString()); } // 私有构造函数 private GetFieldsOfClass() { System.out.println("We are in private constructor"); } // 公共构造函数 public GetFieldsOfClass(int i, short s) { this.i = i; this.s = s; } private int i = 100; public short s = 200; }
输出结果
We are in private constructor Public Fields: public short GetFieldsOfClass.s