关于Eum的点点滴滴

来源:互联网 发布:男士商务单肩包 知乎 编辑:程序博客网 时间:2024/06/06 11:41

Enum可以有自己的构造函数,成员变量,成员函数,它跟class很神似。而且编译的时候,Enum会生成一个自己的.class文件

注意点:

首先,Enum的构造函数必须是私有的,因为它不提供外部实例化创建。如果你用public修饰,编译器会报错。

在定义成员函数和成员变量时,必须在最后一个枚举值后面加";",  表示该行语句结束。

如果提供带形参的构造方法而未提供不带形参的构造方法,那么你必须对enum成员进行带参初始化。

比如  把上面代码中的Weekday(){}注释掉,那么你必须相对应的代码段

修改为

上面的代码中定义了nextDay方法,那么你必须通过WeekDay的对象即WeekDay.Mon或者WeekDay.Tues或者WeekDay.Wed来调用该方法。

关于枚举类的常见方法:

 (1)  ordinal()方法: 返回枚举值在枚举类中的顺序。这个顺序根据枚举值声明的顺序而定。

比如 Weekday.Mon.ordinal() 返回 0

(2)compareTo()方法:返回两个枚举值的顺序之差。

比如Weekday.Mon.compareTo(Weekday.Tues)  返回-1

(3)toString()方法:返回该枚举常量的名称

比如Weekday.Mon.toString() 为 Mon

(4)values()方法:返回存储全部枚举值的数组。因此也能通过这个方法,访问任意一个枚举值。

比如

 

访问其中的一个枚举值

 

0 0
原创粉丝点击