Back to Lessons

Java Reflection API

April 5, 2026

Reflection API

Inspect and manipulate classes, methods, fields at runtime.

Reflection Example

import java.lang.reflect.*;

// Get class info
Class clazz = String.class;
// Class clazz = "java.lang.String".getClass();

Field[] fields = clazz.getDeclaredFields();
Method[] methods = clazz.getMethods();

Constructor constructor = clazz.getConstructor(String.class);

Key Points

  • Class.forName() loads class by name.
  • getMethod(), getField() for introspection.
  • newInstance() creates objects dynamically.
  • Used by frameworks (Spring, Hibernate).