java.lang.Class.getField() 返回一個Field物件,它反映此Class物件所表示的類或介面的指定公共成員欄位。 name引數是一個字串,指定所需欄位的簡單名稱。
以下是java.lang.Class.getField()方法的宣告
public Field getField(String name) throws NoSuchFieldException, SecurityException
name -- 這是欄位的名稱。
此方法返回由name指定這個類的Field物件。
NoSuchFieldException -- 如果沒有找到具有指定名稱的欄位。
NullPointerException -- 如果 name 為 null
SecurityException -- 如果安全管理存在。
下面的例子顯示java.lang.Class.getField()方法的使用。
package com.yiibai; import java.lang.reflect.*; public class ClassDemo { public static void main(String[] args) { ClassDemo c = new ClassDemo(); Class cls = c.getClass(); System.out.println("Field ="); try { // string field Field sField = cls.getField("string1"); System.out.println("Public field found: " + sField.toString()); } catch(NoSuchFieldException e) { System.out.println(e.toString()); } } public ClassDemo() { // no argument constructor } public ClassDemo(String string1) { this.string1 = string1; } public String string1 = "yiibai"; }
讓我們來編譯和執行上面的程式,這將產生以下結果:
Field = Public field found: public java.lang.String ClassDemo.string1