The getDeclaredFields() method of java.lang.Class class is used to get the fields of this class, which are the fields that are private, public, protected or default and its members, but not the inherited ones. The method returns the fields of this class in the form of array of Field objects.
Syntax:
public Field[] getDeclaredFields() throws SecurityException
Parameter: This method does not accept any parameter.
Return Value: This method returns the fields of this class in the form of array of Field objects.
Exception This method throws SecurityException if a security manager is present and the security conditions are not met.
Below programs demonstrate the getDeclaredFields() method.
Example 1:
Java
// Java program to demonstrate getDeclaredFields() method import java.util.*; public class Test { public static void main(String[] args) throws ClassNotFoundException { // returns the Class object for this class Class myClass = Class.forName("Test"); System.out.println("Class represented by myClass: " + myClass.toString()); // Get the fields of myClass // using getDeclaredFields() method System.out.println( "DeclaredFields of myClass: " + Arrays.toString( myClass.getDeclaredFields())); } } |
Class represented by myClass: class Test DeclaredFields of myClass: []
Example 2:
Java
// Java program to demonstrate getDeclaredFields() method import java.util.*; class Main { public Object obj; Main() { class Arr { }; obj = new Arr(); } public static void main(String[] args) throws ClassNotFoundException { // returns the Class object for this class Class myClass = Class.forName("Main"); System.out.println("Class represented by myClass: " + myClass.toString()); // Get the fields of myClass // using getDeclaredFields() method System.out.println( "DeclaredFields of myClass: " + Arrays.toString( myClass.getDeclaredFields())); } } |
Class represented by myClass: class Main DeclaredFields of myClass: [public java.lang.Object Main.obj]
Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getDeclaredFields–