详细讲述一下java里的枚举 
时间: 2023-05-24 17:06:56 浏览: 31
Java中的枚举是一种特殊的数据类型,它允许我们定义自己的常量集合。
在Java中,枚举类型使用了enum关键字进行定义。一个枚举类型定义通常包含一个或多个常量,每个常量都可以有一个名称和一个值。同时,枚举类型还可以包含自己的方法和属性。
以下是一个简单的枚举类型定义:
```
enum Day {SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY}
```
在这个定义中,我们定义了一个名为Day的枚举类型,它包含了七个常量:SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY和SATURDAY。
枚举类型定义可以包含枚举常量之外的内容。例如,你可以在枚举类型定义中定义方法、变量和构造函数。下面是一个带有构造函数的枚举类型定义:
```
public enum Season {
WINTER("Low"), SPRING("Medium"), SUMMER("High"), FALL("Medium");
private String oilLevel;
private Season(String oilLevel) {
this.oilLevel = oilLevel;
}
public String getOilLevel() {
return this.oilLevel;
}
}
```
在这个例子中,我们定义了一个Season的枚举类型,它有四个常量:WINTER、SPRING、SUMMER和FALL。每个常量都有一个名称和一个关联的oilLevel值。此外,这个枚举类型还有一个私有变量oilLevel和一个构造函数来初始化oilLevel值。最后,它还有一个公共方法getOilLevel(),它返回oilLevel值。
我们可以像下面这样使用这个枚举:
```
public class Main {
public static void main(String[] args) {
System.out.println(Season.SUMMER); // 输出: SUMMER
System.out.println(Season.WINTER.getOilLevel()); // 输出: Low
}
}
```
注意,在Java中,枚举类型是一种类。枚举类型定义可以有一些关键字:public、protected和private,这些关键字可以控制访问权限。
总之,枚举类型是一种定义常量集合的方便方式。它提供了一种类型安全的方式来定义常量,并允许我们为常量定义方法和属性。
相关推荐

















