1.定义一个枚举类:

 1 package com.example.eum;
 2 
 3 public enum Gender {
 4     // 枚举中包含比要的常量,也可以包含属性、方法,私有构造方法
 5     // 枚举常量必须放在最前面,多个常量用逗号分隔,最后写分号
 6     // 必须包含常量,可以没有其他的成员
 7     MALE, FEMALE;
 8 
 9     // 私有属性
10     private String name;
11 
12     // 公有属性
13     public int age;
14 
15     // 私有构造方法
16     private Gender() {
17 
18     }
19 
20     // 私有方法
21     private void show() {
22 
23     }
24 
25     // 共有方法
26     public void show2() {
27 
28     }
29 
30     // 静态方法
31     static void show3() {
32 
33     }
34 }

 

使用枚举变量

 1 package com.example.eum;
 2 
 3 public class TestGender {
 4 
 5     public static void main(String[] args) {
 6         Gender gen = Gender.MALE;
 7         gen.show2();// 调用示例方法
 8         Gender.show3();// 调用静态方法
 9 
10         // switch后面可以用的类型有:byte、short、int、char、String、Enum
11         switch (gen) {
12         case MALE:
13             System.out.println("male");
14             break;
15         case FEMALE:
16             System.out.println("female");
17             break;
18         default:
19             System.out.println("undefined");
20             break;
21         }
22     }
23 }

 

枚举的本质是一个继承了Enum的final类 。

而枚举中的常量,是static final的本类型常量。

类似于以下的代码(示意代码,语法会报错)

1 package com.example.eum;
2 
3 public final class Train extends Enum {
4 
5     public static final Train train1;
6     public static final Train train2;    
7 }

 

posted on 2021-02-07 14:21  Sempron2800+  阅读(69)  评论(0编辑  收藏  举报