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+瀏覽

開啟你的 職業

完成課程並獲得認證

入門
廣告