Java Class 类 getDeclaredField()方法及示例
Class类getDeclaredField()方法
getDeclaredField()方法在java.lang包中可用。
getDeclaredField()方法用于返回一个Field对象,该对象指示该类的给定声明字段或由此Class对象表示的接口。
getDeclaredField()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
返回一个Field对象时,getDeclaredField()方法可能会引发异常。
NoSuchFieldException:在此异常中,当指定字段不存在时。
SecurityException:在此异常中,当安全管理器存在时,它可能会引发。
NullPointerException:在此异常中,当给定的Field为null时。
语法:
public Field getDeclaredField (String field_name);
参数:
字符串field_name–代表字段名称。
返回值:
此方法的返回类型为Field,它返回此类中给定Field的Field对象。
示例
//Java程序演示示例
//类的FieldgetDeclaredField(Stringfield_name)方法
import java.lang.reflect.*;
public class GetDeclaredFieldOfClass {
public static void main(String[] args) throws Exception {
GetDeclaredFieldOfClass declare_field = new GetDeclaredFieldOfClass();
//获取类
Class cl = declare_field.getClass();
//通过使用getDeclaredField()方法是获取
//类
Field f = cl.getDeclaredField("i");
System.out.println("Declared Field: " + f.toString());
}
//私有构造函数
private GetDeclaredFieldOfClass() {
System.out.println("We are in private constructor");
}
//公共构造函数
public GetDeclaredFieldOfClass(int i) {
this.i = i;
}
int i = 100;
}输出结果
We are in private constructor Declared Field: int GetDeclaredFieldOfClass.i