您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關java如何定義Enum類實現取值和描述的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
在C++、Java等計算機編程語言中,枚舉類型(Enum)是一種特殊數據類型,能夠為一個變量定義一組預定義的常量。在使用枚舉類型的時候,枚舉類型變量取值必須為其預定義的取值之一。
在JDK5之前,Java語言不支持枚舉類型,只能用類(class)來模擬實現枚舉類型。
/** 訂單狀態枚舉 */public final class OrderStatus { /** 屬性相關 */ /** 狀態取值 */ private final int value; /** 狀態描述 */ private final String description; /** 常量相關 */ /** 已創建(1) */ public static final OrderStatus CREATED = new OrderStatus(1, "已創建"); /** 進行中(2) */ public static final OrderStatus PROCESSING = new OrderStatus(2, "進行中"); /** 已完成(3) */ public static final OrderStatus FINISHED = new OrderStatus(3, "已完成"); /** 構造函數 */ private OrderStatus(int value, String description) { this.value = value; this.description = description; } /** 獲取狀態取值 */ public int getValue() { return value; } /** 獲取狀態描述 */ public String getDescription() { return description; } }
JDK5提供了一種新的類型——Java的枚舉類型,關鍵字enum可以將一組具名的值的有限集合創建為一種新的類型,而這些具名的值可以作為常量使用,這是一種非常有用的功能。
/** 訂單狀態枚舉 */public enum OrderStatus { /** 常量相關 */ /** 已創建(1) */ CREATED(1, "已創建"), /** 進行中(2) */ PROCESSING(2, "進行中"), /** 已完成(3) */ FINISHED(3, "已完成"); /** 屬性相關 */ /** 狀態取值 */ private final int value; /** 狀態描述 */ private final String description; /** 構造函數 */ private OrderStatus(int value, String description) { this.value = value; this.description = description; } /** 獲取狀態取值 */ public int getValue() { return value; } /** 獲取狀態描述 */ public String getDescription() { return description; } }
其實,Enum類型就是一個語法糖,編譯器幫我們做了語法的解析和編譯。通過反編譯,可以看到Java枚舉編譯后實際上是生成了一個類,該類繼承了 java.lang.Enum,并添加了values()、valueOf()等枚舉類型通用方法。
感謝各位的閱讀!關于“java如何定義Enum類實現取值和描述”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。