
Play Store Application link – https://play.google.com/store/apps/details?id=com.ideepro.java25hours
Learn with youtube video-
![Java-Reflection-Reflection-API[1]](https://corejava25hours.com/wp-content/uploads/2021/02/java-reflection-reflection-api1.jpg)
💡Definition-
Generally reflection means -Ability of a software to analyze itself.
In java, reflection api allows to analyze and modify runtime behavior of class, at runtime.
package- java.lang.reflect
Let’s take a class Abc to analyze with reflection api
package reflexn;
public class Abc {
private int age=12;
public String name="asd";
public Abc() {
System.out.println("asdfgh");
}
private Abc(String a){
System.out.println("zxcmnb");
}
public void ds(){
System.out.println("dfg");
}
private void sd(){
System.out.println("asd");
}
}
💡Some important classes –
💡1- Class –
This class is used to load any class dynamically.
package reflexn;
public class Cls {
public static void main(String[] args) throws ClassNotFoundException {
Class c = Class.forName("rexn.Abc");
}
}
💡2- Constructor
package reflexn;
import java.lang.reflect.*;
import java.util.Arrays;
public class Const {
public static void main(String args[]) throws ClassNotFoundException {
Class c = Class.forName("reflexn.Abc");
Constructor[] cdt = c.getDeclaredConstructors();
System.out.println(Arrays.toString(cdt));
}
}
💡3- Method-
package reflexn;
import java.lang.reflect.*;
import java.util.Arrays;
public class Methds {
public static void main(String args[]) throws ClassNotFoundException {
Class c = Class.forName("reflexn.Abc");
Method md[] = c.getDeclaredMethods();
System.out.println(Arrays.toString(md));
}
}
💡4- Fields-
package reflexn;
import java.lang.reflect.*;
import java.util.Arrays;
public class Flds {
public static void main(String args[]) throws ClassNotFoundException {
Class c = Class.forName("reflexn.Abc");
Field f[] = c.getDeclaredFields();
System.out.println(Arrays.toString(f));
}
}
💡*Object creation using newInstance method
package reflexn;
public class Nwins {
public static void main(String args[]) throws ClassNotFoundException, InstantiationException, IllegalAccessException {
Class c = Class.forName("reflexn.Abc");
Abc a = (Abc) c.newInstance();
}
}
Interview Questions —
- What is reflection api in java?
- What can be achieved with reflection api in java?


















