1. 程式人生 > >Java列舉類的簡單學習(瞭解)

Java列舉類的簡單學習(瞭解)

先看一個簡單的列舉類。
package enumcase;
public enum SeasonEnum {
    SPRING,SUMMER,FALL,WINTER;
}
1.enumclassinterface的地位一樣
2.使用enum定義的列舉類預設繼承了java.lang.Enum,而不是繼承Object類。列舉類可以實現一個或多個介面。
3.列舉類的所有例項都必須放在第一行展示,不需使用new 關鍵字,不需顯式呼叫構造器。自動新增public static final修飾。
4.使用enum定義、非抽象的列舉類預設使用final修飾,不可以被繼承。
5.列舉類的構造器只能是私有的。
 列舉類內也可以定義屬性和方法,可是是靜態的和非靜態的。
6.
列舉類不能定義在main函式中。 複製程式碼 package enumcase; public enum SeasonEnum { SPRING("春天"),SUMMER("夏天"),FALL("秋天"),WINTER("冬天"); private final String name; private SeasonEnum(String name) { this.name = name; } public String getName() { return name; } } 複製程式碼   實際上在第一行寫列舉類例項的時候,預設是呼叫了構造器的,所以此處需要傳入引數,因為沒有顯式申明無參構造器,只能呼叫有引數的 構造器。   構造器需定義成私有的,這樣就不能在別處申明此類的物件了。列舉類通常應該設計成不可變類,它的Field不應該被改變,這樣會更安全, 而且程式碼更加簡潔。所以我們將Field用private
final修飾。