一、枚舉概念
Java 枚舉類是一種特殊的類,用于定義一個固定數量的常量集合。它在 Java 中被廣泛用于代表一組相關的常量,例如表示星期幾、月份或者狀態等。在Java中一個實體類一般可以創建無限個對象,枚舉類的對象它是有限的,比如季節類、星期類。它們的對象都是固定的且有限的。
二、枚舉的聲明
1)dk1.5之前枚舉的聲明方式
在jdk1.5之前,Java并沒有內置的枚舉類型。因此,在這個版本之前,通過使用特定的方式來聲明和使用枚舉
Month枚舉類:
在上面的示例中,Month類使用 final 類型的靜態常量來表示每個具體的枚舉值。注意,為了避免其他類創建 Day 的實例,我們將構造函數設置為私有的。盡管這種方式不具備真正的枚舉類型的優點,但在 JDK 1.5 之前,這是一種常見且有效的方式來模擬枚舉。從 JDK 1.5 開始,引入了內置的枚舉類型,提供了更方便和類型安全的枚舉聲明方式。
2)jdk1.5之后前枚舉的聲明方式
(1)基本語法格式
1.使用enum修飾類名,表明是一個枚舉類。例如 enum Month。
2.使用對象名1(屬性值....),對象名2(屬性值....)語法格式調用有參構造來創建枚舉類的對象,多個對象直接使用‘,’進行分隔。這些對象的創建就等價于public、static、final類名對象名=new類型(屬性值)。
3.構造方法默認使用private修飾,不能使用public修飾。
Month枚舉類的聲明:
枚舉的常用方法
①values():返回包含枚舉類中所有枚舉值的數組
②valueOf(String name):根據枚舉值的名稱獲取對應的枚舉對象
③name():獲取枚舉值的名稱
④ordinal():獲取枚舉值在枚舉類中的索引位置(從0開始)



