Enum能扩展Java中的任何类吗?
Java中的枚举(enum)是一种用于存储一组常量值的数据类型。您可以使用枚举来存储固定值,例如一周中的日期、一年中的月份等。
您可以使用关键字enum后跟枚举名称来定义一个枚举,例如 -
enum Days { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
与数组一样,枚举中的元素/常量使用数字标识,从0开始,在上例中,几天使用数字标识,如下面的说明所示 -
枚举类似于类,您可以在其中拥有变量、方法和构造函数。枚举中只允许使用具体方法。
扩展类
所有枚举在内部都扩展一个名为Enum的类,它是所有语言枚举类型基类。由于Java不支持多重继承,因此如果您尝试使用枚举扩展另一个类,将产生编译时错误。
示例
在下面的java片段中,我们有一个名为Sample的类,我们创建了一个名为Scooters的Enum类型并尝试扩展Sample类。
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
广告