Java-lang-class-getdeclaredfields

提供:Dev Guides
移動先:案内検索

Java.lang.Class.getDeclaredFields()メソッド

説明

  • java.lang.Class.getDeclaredFields()*メソッドは、public、protected、default(package)access、およびprivateフィールドを含むFieldオブジェクトの配列を返しますが、継承されたフィールドは除外します。 クラスまたはインターフェイスがフィールドを宣言しない場合、またはこのClassオブジェクトがプリミティブ型、配列クラス、またはvoidを表す場合、メソッドは長さ0の配列を返します。

宣言

以下は* java.lang.Class.getDeclaredFields()*メソッドの宣言です

public Field[] getDeclaredFields() throws SecurityException

パラメーター

NA

戻り値

このメソッドは、このクラスの宣言されたすべてのフィールドを表すFieldオブジェクトの配列を返します。

例外

*SecurityException* -セキュリティマネージャーsが存在する場合。

次の例は、java.lang.Class.getDeclaredFields()メソッドの使用方法を示しています。

package com.finddevguides;

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 com.finddevguides.ClassDemo.l
Field = int com.finddevguides.ClassDemo.i