What is reflection in java?

Reflection is process of modifying the run time behavior of a class at run time.The java.lang.Class is provide many methods that can be used to get metadata, change the run time behavior of class.