Enum in Java


The java.lang.Enum class is the common base class of all Java language enumeration types.

Class Declaration

Following is the declaration for java.lang.Enum class −

public abstract class Enum<E extends Enum<E>>
   extends Object
      implements Comparable<E>, Serializable

Class constructors

Sr.No. Constructor & Description
1

protected Enum(String name, int ordinal)

This is the single constructor.

Class methods

Sr.No. Method & Description
1 protected Object clone()

This method throws CloneNotSupportedException.

2 int compareTo(E o)

This method compares this enum with the specified object for order.

3 boolean equals(Object other)

This method returns true if the specified object is equal to this enum constant.

4 protected void finalize()

This method returns enum classes cannot have finalize methods.

5 Class<E> getDeclaringClass()

This method returns the Class object corresponding to this enum constant's enum type.

6 int hashCode()

This method returns a hash code for this enum constant.

7 String name()

This method returns the name of this enum constant, exactly as declared in its enum declaration.

8 int ordinal()

This method returns the ordinal of this enumeration constant (its position in its enum declaration, where the initial constant is assigned an ordinal of zero).

9 String toString()

This method returns the name of this enum constant, as contained in the declaration.

10 static <T extends Enum<T>> T valueOf(Class<T> enumType, String name)

This method returns the enum constant of the specified enum type with the specified name.

Methods inherited

This class inherits methods from the following classes −

  • java.lang.Object

Example

Let us look at an example.

public class Tester{
   public static void main(String args[]) {
      //print an Enum 
      System.out.println(Mobile.Motorola);

      Mobile mobile = Mobile.Samsung;
      //Usage in IF statment
      if(mobile == Mobile.Samsung) {
         System.out.println("Matched");
      }       
      //Usage in Swith statment
      switch(mobile) {
         case Samsung:
            System.out.println("Samsung");
            break;
         case Nokia:
            System.out.println("Nokia");
            break;
         case Motorola:
            System.out.println("Motorola");
      }
   }    
}
enum Mobile {
   Samsung, Nokia, Motorola;
}

This will produce the following result −

Output

Motorola
Matched
Samsung
raja
Published on 13-Aug-2018 13:03:30
Advertisements