Last Updated : 24 Nov, 2021
Enum class is present in java.lang package. It is the common base class of all Java language enumeration types. For information about enums, refer
enum in javaClass Declaration
public abstract class Enum<E extends Enum> extends Object implements Comparable, Serializable
As we can see, that Enum is an
abstractclass, so we
can notcreate object of class Enum.
Methods in Enum Class
Enum class provides 10 useful methods. Most of them are overridden from
Objectclass. These methods are declared as final in Enum class so the programmer cannot modify any of the enum constants.
Syntax : public final String name() Parameters : NA Returns : the name of this enum constantJava
// Java program to demonstrate name() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
Color c1 = Color.RED;
System.out.print("Name of enum constant: ");
// name method
System.out.println(c1.name());
}
}
Output:
Name of enum constant: RED
Syntax : public final int ordinal() Parameters : NA Returns : the ordinal of this enumeration constantJava
// Java program to demonstrate ordinal() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
Color c1 = Color.GREEN;
System.out.print("ordinal of enum constant "+c1.name()+" : ");
// ordinal method
System.out.println(c1.ordinal());
}
}
Output:
ordinal of enum constant GREEN : 1
Syntax : public String toString() Parameters : NA Returns : a string representation of this enumeration constant Overrides : toString in class ObjectJava
// Java program to demonstrate toString() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
Color c1 = Color.GREEN;
// getting string representation of enum
// using toString() method
String str = c1.toString();
System.out.println(str);
}
}
Output:
GREEN
Syntax : public final boolean equals(Object obj) Parameters : obj - the object too be compared for equality with this enum. Returns : true if the specified object is equal to this enum constant. false otherwise Overrides : equals in class ObjectJava
// Java program to demonstrate equals() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
Color c1 = Color.RED;
Color c2 = Color.GREEN;
Color c3 = Color.RED;
// checking equality between enums
// using equals() method
boolean b1 = c1.equals(c2);
boolean b2 = c1.equals(c3);
boolean b3 = c2.equals(null);
System.out.println("is c1 equal to c2 : " + b1);
System.out.println("is c1 equal to c3 : " + b2);
System.out.println("is c2 equal to null : " + b3);
}
}
Output:
is c1 equal to c2 : false is c1 equal to c3 : true is c2 equal to null : false
Syntax : public final int hashCode() Parameters : NA Returns : a hash code for this enum constant. Overrides : hashCode in class ObjectJava
// Java program to demonstrate hashCode() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
Color c1 = Color.RED;
System.out.print("hashcode of enum constant "+ c1.name() +" : ");
// hashcode method
System.out.println(c1.hashCode());
Color c2 = Color.GREEN;
System.out.print("hashcode of enum constant "+ c2.name() +" : ");
// hashcode method
System.out.println(c2.hashCode());
}
}
Output:
hashcode of enum constant RED : 366712642 hashcode of enum constant GREEN : 1829164700
Syntax : public int compareTo(E obj) Parameters : obj - the object to be compared. Returns : a negative integer if this object is at less ordinal than the specified object zero if this object is at equal ordinal than the specified object a positive integer if this object is at greater ordinal than the specified object Throws : NullPointerException - if the argument is nullJava
// Java program to demonstrate compareTo() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
Color c1 = Color.RED;
Color c2 = Color.GREEN;
Color c3 = Color.RED;
Color c4 = Color.BLUE;
System.out.print("Comparing "+c1.name()+" with "+ c2.name() +" : ");
// compareTo method
System.out.println(c1.compareTo(c2));
System.out.print("Comparing "+c1.name()+" with "+ c3.name() +" : ");
// compareTo method
System.out.println(c1.compareTo(c3));
System.out.print("Comparing "+c4.name()+" with "+ c2.name() +" : ");
// compareTo method
System.out.println(c4.compareTo(c2));
// The following statement throw NullPointerException
// as argument of compareTo method is null
// System.out.println(c4.compareTo(null));
}
}
Output:
Comparing RED with GREEN : -1 Comparing RED with RED : 0 Comparing BLUE with GREEN : 1
Syntax : public static <T extends Enum> T valueOf(Class enumType,String name) TypeParameters : T - The enum type whose constant is to be returned Parameters : enumType - the Class object of the enum type from which to return a constant name - the name of the constant to return Returns : the enum constant of the specified enum type with the specified name Throws : IllegalArgumentException - if the specified enum type has no constant with the specified name or the specified class object does not represent an enum type NullPointerException - if enumType or name is nullJava
// Java program to demonstrate valueOf() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
// getting value of enum with specified String
// using valueOf method
Color c1 = Color.valueOf("RED");
Color c2 = Color.valueOf("GREEN");
// name method
System.out.println(c1.name());
System.out.println(c2.name());
// The following statement throw IllegalArgumentException
// as GrEEN is not an enum constant
// Color c3 = Color.valueOf("GrEEN");
// The following statement throw NullPointerException
// as argument of valueOf method is null
// Color c4 = Color.valueOf(null);
}
}
Output:
RED GREEN
Syntax : public final Class <E> getDeclaringClass() Parameters : NA Returns : the Class object corresponding to this enum constant's enum typeJava
// Java program to demonstrate getDeclaringClass() method
enum Color
{
RED, GREEN, BLUE;
}
enum Day
{
MONDAY, TUESDAY ;
}
public class Test
{
// Driver method
public static void main(String[] args)
{
// getting value of enum with specified String
// using valueOf method
Color c1 = Color.valueOf("RED");
Color c2 = Color.valueOf("GREEN");
Day d1 = Day.valueOf("MONDAY");
Day d2 = Day.valueOf("TUESDAY");
System.out.print("Class corresponding to "+ c1.name() +" : ");
// getDeclaringClass method
System.out.println(c1.getDeclaringClass());
System.out.print("Class corresponding to "+ c2.name() +" : ");
// getDeclaringClass method
System.out.println(c2.getDeclaringClass());
System.out.print("Class corresponding to "+ d1.name() +" : ");
// getDeclaringClass method
System.out.println(d1.getDeclaringClass());
System.out.print("Class corresponding to "+ d2.name() +" : ");
// getDeclaringClass method
System.out.println(d2.getDeclaringClass());
}
}
Output:
Class corresponding to RED : class Color Class corresponding to GREEN : class Color Class corresponding to MONDAY : class Day Class corresponding to TUESDAY : class Day
Syntax : public final Object clone() throws CloneNotSupportedException Parameters : NA Returns : NA Overrides : clone in class Object Throws : CloneNotSupportedException-if the object's class does not support the Cloneable interface.Java
// Java program to demonstrate clone() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args)
throws CloneNotSupportedException
{
System.out.println("Enums are never cloned");
Test t = new Test()
{
// final clone method
protected final Object clone()
throws CloneNotSupportedException
{
return new CloneNotSupportedException();
}
};
System.out.println(t.clone());
}
}
Output:
Enums are never cloned java.lang.CloneNotSupportedException
Syntax : protected final void finalize() Parameters : NA Returns : NA Overrides : finalize in class ObjectJava
// Java program to demonstrate finalize() method
enum Color
{
RED, GREEN, BLUE;
}
public class Test
{
// Driver method
public static void main(String[] args) throws Throwable
{
System.out.println("enum classes cannot have finalize methods");
Test t = new Test()
{
// final finalize method
protected final void finalize() throws Throwable
{
// empty implementation
};
};
}
}
Output:
enum classes cannot have finalize methods
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4