第29天
哪吒 2023/6/15
# 第29天
每天进步一点点,你已经很棒了!
# Java 枚举(enum)
Java 枚举(enum)是一种特殊的类,用于定义一组固定的常量。枚举类型在Java中非常有用,特别是在需要表示一组固定的选项或状态时。使用枚举可以使代码更加清晰、易于维护,并且可以避免使用魔法数字或字符串常量。
# 实现原理
在Java中,枚举类型是通过关键字enum
来定义的。每个枚举常量都是枚举类型的一个实例。枚举类型在编译时会自动生成一个类,该类继承自java.lang.Enum
。
# 用法示例
public enum Day {
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}
# 常用方法
values()
: 返回一个包含所有枚举常量的数组。name()
: 返回枚举常量的名称。ordinal()
: 返回枚举常量的序数(从0开始)。valueOf(String name)
: 根据名称返回对应的枚举常量。
# 注意事项
- 不可变性: 枚举类型是不可变的,枚举常量在定义时就已经确定,不能在运行时修改。
- 线程安全: 枚举类型是线程安全的,因为枚举常量在类加载时就已经初始化,并且只有一个实例。
- 序列化: 枚举类型默认实现了
Serializable
接口,因此可以序列化。 - 枚举方法: 枚举类型可以定义自己的方法,这些方法可以在枚举常量上调用。
# 示例代码
public enum Color {
RED, GREEN, BLUE;
public void printColor() {
System.out.println(this);
}
}
public class EnumExample {
public static void main(String[] args) {
Color color = Color.RED;
color.printColor(); // 输出: RED
for (Color c : Color.values()) {
System.out.println(c);
}
// 输出:
// RED
// GREEN
// BLUE
}
}
# 总结
Java枚举类型是一种非常有用的特性,用于定义一组固定的常量。它提供了一种类型安全的方式来表示一组固定的选项或状态,使代码更加清晰和易于维护。
今天的学习就到这里啦,明天继续我们的编程之旅吧!