Java.lang.Class.getDeclaredFields() Method



Description

The java.lang.Class.getDeclaredFields() method returns an array of Field objects including public, protected, default (package) access, and private fields, but excludes inherited fields. The method returns an array of length 0 if the class or interface declares no fields, or if this Class object represents a primitive type, an array class, or void.

Declaration

Following is the declaration for java.lang.Class.getDeclaredFields() method

public Field[] getDeclaredFields() throws SecurityException

Parameters

NA

Return Value

This method returns the array of Field objects representing all the declared fields of this class.

Exception

SecurityException − If a security manager, s, is present.

Example

The following example shows the usage of java.lang.Class.getDeclaredFields() method.

package com.tutorialspoint;

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;
}

Let us compile and run the above program, this will produce the following result −

Field = long com.tutorialspoint.ClassDemo.l
Field = int com.tutorialspoint.ClassDemo.i
java_lang_class.htm
Advertisements