スポンサードリンク
20141204_java_Enumクラス
本日はEnumクラス、列挙型について。
「特定の値のみを持つ型」…??よく意味がわからないですね。
こういう時はGoogle先生に聞くのがSEの掟ですね。下記のサイトにて、とてもわかり易く説明されています。
http://javatechnology.net/java/enum/
列挙型を定義してコンパイルするとクラスファイルが生成されますが、その際に列挙型はjava.lang.Enumクラスを継承したfinalクラスとなり、列挙した値はクラス定数となる。とのこと。
■試験上のポイント
・外部クラスからnewでインスタンス化できないため、必然的に修飾子はprivateになる。
・finalクラスになるので、独自クラスは継承できない。
・Comparableインタフェースを継承しているため、宣言した順番で取り出せる。
・順番自体はordinal()メソッドで取り出せる。index()メソッドとか引っ掛けで出る。
enum Ud {
a, b, c, d, e, f;
}
上記に対し、メインメソッドで「0」を出力するのは下記のコード
System.out.println(Ud.a.ordinal());
■実用上のメリット
はじめに紹介させて頂いたサイトに書いてある通り、”ソースの可読性が向上し保守しやすくなる”ことでしょうか。
定数を直接使ってしまうと後々のカスタマイズに影響が…。よくある話です。
なるほど!な気がする。しかし私の開発経験では見た覚えがない。
現在のプロジェクトが開発フェーズに入るも役割はDB管理…。javaの学習を始めた矢先に。
早く会社に行って、昨晩のミスを修正せねば。ガクガク(/_;)
追記:技術畑でいくのを辞めたので資格学習も諦めました。
スポンサードリンク
関連ページ
- java SE7 Goldの学習開始
- 1年後しにjavaの資格の勉強に取り掛かりたいと思います。20141201
- Javaクラス設計
- 2014年12月2日、火曜日。java goldの学習を始めるも、ちょうどこのタイミングで業務が忙しくなる…。