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

更新日期:14-Oct-2019

1K+浏览

开启你的 职业

完成课程并获得认证

入门
广告