定义枚举要用关键字 Enum
所有枚举都是 ENUM 的子类
枚举的第一行上必须上枚举项, 最后一个枚举项后的分号是可以省略, 但是如果枚举有其他枚举类有其他的东西, 这个分号就不能省略, 建议不要省略.
枚举类可以用抽样方法, 但枚举项必须重写该方法
枚举在 switch 语句中使用
测试类
- /**
- * @param args
- */
- public static void main(String[] args) {
- demo1();
- demo2();
- demo3();
- Week3 mon = Week3.TUE;
- switch (mon) {
- case MON:
- System.out.println("星期一");
- break;
- case TUE:
- System.out.println("星期二");
- break;
- }
- }
- public static void demo3() {
- Week3 mon = Week3.MON;
- mon.show();
- }
- public static void demo2() {
- Week2 mon = Week2.MON;
- System.out.println(mon.getName());
- }
- public static void demo1() {
- Week mon = Week.MON;
- System.out.println(mon);
- }
第一种方法
- public enum Week {
- MON,TUE,WED;
- }
第二种方法
- public enum Week2 {
- MON("星期一"),TUE("星期二"),WED("星期三");
- private String name;
- private Week2(String name) {
- this.name = name;
- }
- public String getName() {
- return name;
- }
- public String toString() {
- return name;
- }
- }
第三章方法
- public enum Week3 {
- MON("星期一"){
- public void show() {
- System.out.println("星期一");
- }
- },TUE("星期二"){
- public void show() {
- System.out.println("星期二");
- }
- },WED("星期三"){
- public void show() {
- System.out.println("星期三");
- }
- };
- private String name;
- private Week3(String name) {
- this.name = name;
- }
- public String getName() {
- return name;
- }
- public abstract void show();
- }
来源: http://www.bubuko.com/infodetail-2724741.html