Program to demonstrate how Reflection API can be used to determine whether a class object is an Enum or not in Java
Output of the program :
package com.hubberspot.reflection;
enum Days{
 MONDAY,
 TUESDAY,
 WEDNESDAY,
 THURSDAY,
 FRIDAY,
 SATURDAY,
 SUNDAY
}
public class EnumInfo {
   public static void main(String[] args) {
 // Create an Enum 
 Days day = Days.MONDAY;
        // Create a non-Enum Object
 Integer integer = new Integer(1);
 Class enumClass = day.getClass();
 Class integerClass = integer.getClass();
 // isEnum() checks whether object is of type enum or not 
 if(enumClass.isEnum()) {
 // prints the simple name of the class
            System.out.println("Given class " + enumClass.getSimpleName()
    + " is an Enum");
 } else {
     System.out.println("Given class " + enumClass.getSimpleName()
     + " is not an Enum");
 }
 if(integerClass.isEnum()) {
     System.out.println("Given class " + integerClass.getSimpleName()
    + " is an Enum");
 } else {
     System.out.println("Given class " + integerClass.getSimpleName()
    + " is not an Enum");
 }
   }
}
Output of the program :
 

 
