| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
2,382 バイト追加 、 2020年2月15日 (土) 07:35
ページの作成:「==SJC-P 列挙型== http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/language/enums.html *独自のクラスとして宣言できる **public または デフォル…」
==SJC-P 列挙型==

http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/language/enums.html

*独自のクラスとして宣言できる
**public または デフォルト修飾子しか指定できない(9)
*クラスのメンバとして宣言できる(1)
*セミコロンは省略可能(2)
*コンストラクタ(public以外)を定義できる(4)
*メソッドを定義できる(5)
*内容の列挙には、values()メソッド
*メソッド内部に宣言できない(8)

package enumerate;

public class EnumTest1 {
enum ENUM_NUM { ONE, TWO, THREE }; // クラスのメンバとして宣言できる(1)
enum ENUM_WEEK { SUN, MON, TUE } // セミコロンは省略可能(2)

enum ENUM_SIZE {
BIG(10), MIDIUM(5), SMALL(1),
UNKNOWN(0) {
public String toString() { // 要素独自のメソッドをオーバーライドできる(3)
return "UNKNOWN";
}
}
;
private int size;
ENUM_SIZE(int size) { // コンストラクタ(public以外)を定義できる(4)
this.size = size;
}
public int getSize() { // メソッドを定義できる(5)
return this.size;
}
public String toString() {
return String.valueOf(this.size);
}
}

public static void main(String[] args) {
System.out.println(ENUM_SIZE.BIG);
System.out.println(ENUM_SIZE.UNKNOWN);

// switch 文にて利用できる(6)
ENUM_WEEK color = ENUM_WEEK.TUE;
switch(color) {
case SUN:
System.out.println("日");
break;
case MON:
System.out.println("月");
break;
case TUE:
System.out.println("火");
break;
default:
System.out.println("not match.");
}

// 内容の列挙には、values()メソッド(7)
ENUM_NUM[] nums = ENUM_NUM.values();
for (ENUM_NUM num : nums) {
System.out.println(num);
}
}

public void testEnum() {
// メソッド内部に宣言できない(8)
// enum ENUM_ALPAH { A, B, C};
}
}
// public または デフォルト修飾子しか指定できない(9)
/* public */ enum ENUM_COLOR {
RED, GREEN, BLUE
}

案内メニュー