JavaTM 2 Platform
Standard Ed. 6

java.lang
類別 Enum<E extends Enum<E>>

java.lang.Object
  繼承者 java.lang.Enum<E>
所有已實作的介面:
Serializable, Comparable<E>

public abstract class Enum<E extends Enum<E>>
extends Object
implements Comparable<E>, Serializable

這是所有 Java 語言列舉型別的公共基本類別。

從以下版本開始:
1.5
另請參見:
序列化表格

建構子摘要
protected Enum(String name, int ordinal)
          單獨的建構子。
 
方法摘要
protected  Object clone()
          拋出 CloneNotSupportedException。
 int compareTo(E o)
          比較此列舉與指定物件的順序。
 boolean equals(Object other)
          當指定物件等於此列舉常數時,返回 true。
protected  void finalize()
          列舉類別不能有 finalize 方法。
 Class<E> getDeclaringClass()
          返回與此列舉常數的列舉型別相對應的 Class 物件。
 int hashCode()
          返回列舉常數的雜湊碼。
 String name()
          返回此列舉常數的名稱,在其列舉宣告中對其進行宣告。
 int ordinal()
          返回列舉常數的序數(它在列舉宣告中的位置,其中初始常數序數為零)。
 String toString()
          返回列舉常數的名稱,它包含在宣告中。
static
<T extends Enum<T>>
T
valueOf(Class<T> enumType, String name)
          返回帶指定名稱的指定列舉型別的列舉常數。
 
從類別 java.lang.Object 繼承的方法
getClass, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

Enum

protected Enum(String name,
               int ordinal)
單獨的建構子。開發人員無法調用此建構子。該建構子用於由回應列舉型別宣告的編譯器發出的程式碼。

參數:
name - - 此列舉常數的名稱,它是用來宣告該常數的標識符。
ordinal - - 列舉常數的序數(它在列舉宣告中的位置,其中初始常數序數為零)。
方法詳細資訊

name

public final String name()
返回此列舉常數的名稱,在其列舉宣告中對其進行宣告。 與此方法相比,大多數開發人員應該優先考慮使用 toString() 方法,因為 toString 方法返回更加使用者友好的名稱。該方法主要設計用於特殊情形,其正確性取決於獲取正確的名稱,其名稱不會隨版本的改變而改變。

返回:
列舉常數的名稱

ordinal

public final int ordinal()
返回列舉常數的序數(它在列舉宣告中的位置,其中初始常數序數為零)。 大多數開發人員不會使用此方法。它被設計用於複雜的基於列舉的資料結構,比如 EnumSetEnumMap

返回:
列舉常數的序數

toString

public String toString()
返回列舉常數的名稱,它包含在宣告中。可以覆寫此方法,雖然一般來說沒有必要。當存在更加“開發人員友好的”字元串形式時,應該使用列舉型別覆寫此方法。

覆寫:
類別 Object 中的 toString
返回:
列舉常數的名稱

equals

public final boolean equals(Object other)
當指定物件等於此列舉常數時,返回 true。

覆寫:
類別 Object 中的 equals
參數:
other - 要與此物件進行相等性比較的物件。
返回:
如果指定物件等於此列舉常數,則返回 true。
另請參見:
Object.hashCode(), Hashtable

hashCode

public final int hashCode()
返回列舉常數的雜湊碼。

覆寫:
類別 Object 中的 hashCode
返回:
列舉常數的雜湊碼。
另請參見:
Object.equals(java.lang.Object), Hashtable

clone

protected final Object clone()
                      throws CloneNotSupportedException
拋出 CloneNotSupportedException。這可保證永遠不會複製列舉,這對於保留其“單元素”狀態是必需的。

覆寫:
類別 Object 中的 clone
返回:
此實例的一個副本。
拋出:
CloneNotSupportedException - 如果物件的類別不支持 Cloneable 介面,則覆寫 clone 方法的子類別也會拋出此異常,以指示無法複製某個實例。
另請參見:
Cloneable

compareTo

public final int compareTo(E o)
比較此列舉與指定物件的順序。在該物件小於、等於或大於指定物件時,分別返回負整數、零或正整數。 列舉常數只能與相同列舉型別的其他列舉常數進行比較。該方法實作的自然順序就是宣告常數的順序。

指定者:
介面 Comparable<E extends Enum<E>> 中的 compareTo
參數:
o - 要比較的物件。
返回:
負整數、零或正整數,根據此物件是小於、等於還是大於指定物件。

getDeclaringClass

public final Class<E> getDeclaringClass()
返回與此列舉常數的列舉型別相對應的 Class 物件。當且僅當 e1.getDeclaringClass() == e2.getDeclaringClass() 時,兩個列舉常數 e1 和 e2 的列舉型別才相同。(由該方法返回的值不同於由 Object.getClass() 方法返回的值,Object.getClass() 方法用於帶有特定常數的類別主體的列舉常數。)

返回:
與此列舉常數的列舉型別相對應的 Class 物件

valueOf

public static <T extends Enum<T>> T valueOf(Class<T> enumType,
                                            String name)
返回帶指定名稱的指定列舉型別的列舉常數。名稱必須與在此型別中宣告列舉常數所用的標識符完全比對。(不允許使用額外的空白字元。)

參數:
enumType - 要從中返回常數的列舉型別的 Class 物件
name - 要返回的常數名稱
返回:
帶指定名稱的指定列舉型別的列舉常數
拋出:
IllegalArgumentException - 如果指定列舉型別不包含指定名稱的常數,或者指定類別物件不表示列舉型別
NullPointerException - 如果 enumTypename 為空
從以下版本開始:
1.5

finalize

protected final void finalize()
列舉類別不能有 finalize 方法。

覆寫:
類別 Object 中的 finalize

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only