Java Class 类 getFields()方法及示例
Class类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