位置:首頁 > Java技術 > java.lang > java.lang.Class.getDeclaredFields()方法實例

java.lang.Class.getDeclaredFields()方法實例

java.lang.Class.getDeclaredFields() 方法返回Field對象的數組,包括公共,保護,默認(包)訪問和私有字段,但不包括繼承的字段。該方法返回一個長度為0的數組,如果類或接口不聲明任何字段,或者此Class對象表示一個基本類型,數組類或void。

聲明

以下是java.lang.Class.getDeclaredFields()方法的聲明

public Field[] getDeclaredFields() throws SecurityException

參數

  • NA

返回值

此方法返回一個代表這個類的所有聲明的字段Field對象的數組。

異常

  • SecurityException -- 如果安全管理存在。

例子

下麵的例子顯示java.lang.Class.getDeclaredFields()方法的使用。

package com.yiibai;

import java.lang.reflect.*;

public class ClassDemo {

   public static void main(String[] args) {

     try {            
        ClassDemo c = new ClassDemo();
        Class cls = c.getClass();
       
        // returns the array of Field objects
        Field[] fields = cls.getDeclaredFields();
        for(int i = 0; i < fields.length; i++) {
           System.out.println("Field = " + fields[i].toString());
        }
     }
     catch(Exception e) {
        System.out.println(e.toString());
     }
   }

   public ClassDemo() {
      // no argument constructor
   }

   public ClassDemo(long l, int i) {
      this.l = l;
      this.i = i;
   }

   long l = 77688;
   int i = 3;
}

讓我們來編譯和運行上麵的程序,這將產生以下結果:

Field = long ClassDemo.l
Field = int ClassDemo.i