The java.lang.Class class performs mainly two tasks:
Provides methods to get the metadata of a class at runtime.
Provides methods to examine and change the runtime behavior of a class.