java.lang.Object
java.lang.Enum<E>
- 型パラメータ:
- E- 列挙型のサブクラス
- すべての実装されたインタフェース:
- Serializable,- Comparable<E>,- Constable
public abstract class Enum<E extends Enum<E>> extends Object implements Constable, Comparable<E>, Serializable
すべてのJava言語列挙型の共通の基底クラスです。 コンパイラによって合成される暗黙的に宣言されたメソッドの説明など、列挙の詳細は、「Java言語仕様」の8.9の項を参照してください。 列挙型はすべて直列化可能で、直列化メカニズムによって特別な処理を受信します。 列挙定数に使用される直列化された表現はカスタマイズできません。 直列化と相互作用するメソッドとフィールドの宣言は、
serialVersionUIDなど無視されます。詳細は、「Javaオブジェクト直列化仕様」を参照してください。 
 - Java言語仕様を参照してください:
- 
8.9 列挙タイプ 
 8.9.3列挙メンバー
- 導入されたバージョン:
- 1.5
- 関連項目:
- Class.getEnumConstants(),- EnumSet,- EnumMap
- 
ネストされたクラスのサマリーネストされたクラス 修飾子と型 クラス 説明 static classEnum.EnumDesc<E extends Enum<E>>enum定数の場合、「名目記述子」。
- 
コンストラクタのサマリー
- 
メソッドのサマリー修飾子と型 メソッド 説明 protected Objectclone()CloneNotSupportedExceptionをスローします。intcompareTo(E o)このenumと指定されたオブジェクトの順序を比較します。Optional<Enum.EnumDesc<E>>describeConstable()このインスタンスの列挙型記述子EnumDescを返します(作成可能な場合)。作成できない場合は空のOptionalを返します。booleanequals(Object other)指定されたオブジェクトがこのenum定数と同じ場合は、trueを返します。protected voidfinalize()enumクラスはfinalizeメソッドを持つことはできません。Class<E>getDeclaringClass()このenum定数のenum型に対応するClassオブジェクトを返します。inthashCode()このenum定数のハッシュ・コードを返します。Stringname()enum宣言で宣言されているとおりのenum定数の名前を返します。intordinal()列挙定数の序数(列挙宣言での位置。初期定数はゼロの序数に割り当てられる)を返します。StringtoString()宣言に含まれるとおりのenum定数の名前を返します。static <T extends Enum<T>>
 TvalueOf(Class<T> enumType, String name)指定された名前を持つ指定されたenum型のenum定数を返します。
- 
コンストラクタの詳細- 
列挙型protected Enum(String name, int ordinal)唯一のコンストラクタです。 プログラマは、このコンストラクタを呼び出すことはできません。 このコンストラクタは、enum型宣言に対する応答で、コンパイラにより生成されるコードで使用するためのものです。- パラメータ:
- name- - このenum定数の名前。enumを宣言するために使われる識別子。
- ordinal- - 列挙定数の序数(enum宣言での位置。初期定数はゼロの序数に割り当てられる)。
 
 
- 
- 
メソッドの詳細- 
namepublic final String name()enum宣言で宣言されているとおりのenum定数の名前を返します。 ほとんどのプログラマは、このメソッドよりもtoString()メソッドを使用するようにしてください。これは、toStringメソッドの方がユーザーフレンドリな名前を返すことができるからです。 このメソッドは、リリース間で変わることがないname値自体の取得に依存するような特殊な状況で主に使用するために設計されています。- 戻り値:
- このenum定数の名前
 
- 
ordinalpublic final int ordinal()列挙定数の序数(列挙宣言での位置。初期定数はゼロの序数に割り当てられる)を返します。 このメソッドは、ほとんどのプログラマにとって役に立ちません。EnumSetやEnumMapなどの高度なenumベースのデータ構造で使用するために設計されています。- 戻り値:
- この列挙定数の序数
 
- 
toStringpublic String toString()宣言に含まれるとおりのenum定数の名前を返します。 このメソッドは不要な場合や不適切な場合にオーバーライドできます。 より「プログラマフレンドリ」な文字列形式が存在する場合、enum型はこのメソッドをオーバーライドする必要があります。
- 
equalspublic final boolean equals(Object other)指定されたオブジェクトがこのenum定数と同じ場合は、trueを返します。- オーバーライド:
- equals、クラス:- Object
- パラメータ:
- other- このオブジェクトと等しいかどうかを比較するオブジェクト。
- 戻り値:
- 指定されたオブジェクトがこのenum定数と同じ場合はtrue
- 関連項目:
- Object.hashCode()、- HashMap
 
- 
hashCodepublic final int hashCode()このenum定数のハッシュ・コードを返します。- オーバーライド:
- hashCode、クラス:- Object
- 戻り値:
- このenum定数のハッシュ・コード
- 関連項目:
- Object.equals(java.lang.Object),- System.identityHashCode(java.lang.Object)
 
- 
cloneprotected final Object clone() throws CloneNotSupportedExceptionCloneNotSupportedExceptionをスローします。 これにより、「単体」ステータスを維持する必要があるenumが複製されないことが保証されます。- オーバーライド:
- clone、クラス:- Object
- 戻り値:
- (返さない)
- 例外:
- CloneNotSupportedException- オブジェクトのクラスが- Cloneableインタフェースをサポートしていない場合。- cloneメソッドをオーバーライドしたサブクラスも、インスタンスを複製できないことを示すためにこの例外をスローすることがある。
- 関連項目:
- Cloneable
 
- 
compareTopublic final int compareTo(E o)このenumと指定されたオブジェクトの順序を比較します。 このオブジェクトが指定されたオブジェクトより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数を返します。 enum定数は、同じenum型のほかのenum定数だけと比較できます。 このメソッドにより実装される自然の順番は、定数が宣言された順番です。- 定義:
- compareTo、インタフェース:- Comparable<E extends Enum<E>>
- パラメータ:
- o-比較対象のオブジェクト。
- 戻り値:
- このオブジェクトが指定されたオブジェクトより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数
 
- 
getDeclaringClassこのenum定数のenum型に対応するClassオブジェクトを返します。 e1.getDeclaringClass()== e2.getDeclaringClass()の場合だけ、2つのenum定数e1とe2は同じenum型のenum定数です。 このメソッドにより返される値は、定数固有のクラス本文を持つenum定数についてObject.getClass()メソッドで返される値とは異なる可能性があります。- 戻り値:
- このenum定数のenum型に対応するClassオブジェクト
 
- 
describeConstablepublic final Optional<Enum.EnumDesc<E>> describeConstable()このインスタンスの列挙型記述子EnumDescを返します(作成可能な場合)。作成できない場合は空のOptionalを返します。- 定義:
- インタフェースConstable内のdescribeConstable
- 戻り値:
- 最終的な名目記述子を含むOptional、または作成できない場合は空のOptional。
- 導入されたバージョン:
- 12
 
- 
valueOf指定された名前を持つ指定されたenum型のenum定数を返します。 この名前は、この型でenum定数を宣言するのに使用される識別子に一致しなければいけません。 (不適切な空白文字は許可されません。)特定の列挙型 Tについて、その列挙上の暗黙的に宣言されたpublic static T valueOf(String)メソッドをこのメソッドの代わりに使用すれば、名前から対応する列挙定数へのマッピングを行うことができます。 列挙型のすべての定数を取得するには、その型の暗黙的なpublic static T[] values()メソッドを呼び出します。- 型パラメータ:
- T- 返す定数を含んでいる列挙型
- パラメータ:
- enumType- 定数が返されるenum型の- Classオブジェクト
- name- 返される定数の名前
- 戻り値:
- 指定された名前を持つ指定されたenum型のenum定数
- 例外:
- IllegalArgumentException- 指定されたenum型が指定された名前の定数を持たない場合、または指定されたクラス・オブジェクトがenum型を表さない場合
- NullPointerException-- enumTypeまたは- nameがnullの場合
- 導入されたバージョン:
- 1.5
 
- 
finalizeprotected final void finalize()enumクラスはfinalizeメソッドを持つことはできません。- オーバーライド:
- finalize、クラス:- Object
- 関連項目:
- WeakReference,- PhantomReference
 
 
-