java.lang.Class.getField()方法範例


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