An enumeration (enum) in Java is a data type that stores a set of constant values. You can use enumerations to store fixed values such as days of the week, months of the year, etc.
You can define an enumeration using the keyword enum followed by the enumeration name as shown below -
enum Days { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
Just like an array, in the above example, the elements/constants in the enumeration Identified using numbers starting from 0, as shown in the following image:
# Enumeration classes are similar to classes in that you can have variables, methods, and constructors. Only concrete methods are allowed in enumerations.
All enumeration classes will internally extend a class named Enum, which is the base class of all language enumeration types. Since Java does not support multiple inheritance, a compile-time error will be generated if you try to extend an enum class to another class.
In the following Java code snippet, we have a class called Sample and have created an enumeration type called Scooters and are trying to extend it to the Sample class.
import java.util.Scanner; class Sample { } enum Scooters extends Sample { }
On executing, this class generates the following compile time error. D:\>javac EnumExample.java EnumExample.java:5: error: '{' expected enum Scooters extends Sample{ ^ EnumExample.java:5: error: ',', '}', or ';' expected enum Scooters extends Sample{ ^ 2 errors
The above is the detailed content of In Java, can an enumeration (Enum) extend any class?. For more information, please follow other related articles on the PHP Chinese website!