java 枚举 new java 枚举继承解决方法_枚举类

在枚举中有一种抽象类,它的方法被枚举继承。那么学会Enum的方法后,可以说对枚举中类的基础方法有所了解。接下来我们就简单介绍Enum的概念,然后分析一些使用enum时要遵循的规则,在掌握了这些注意点后,进一步在代码实例中体会enum在java枚举中的作用。

1.概念
枚举类实际上继承了Enum抽象类,因此Enum抽象类是所有枚举类型的基本类。
2.使用事项
(1)使用 enum 定义的枚举类默认继承了 java.lang.Enum类,因此不能再继承其他类;
(2)使用 enum 定义的枚举类默认,使用final进行修饰,不可以被继承;(也从侧面说明了它是一个常量类)
(3)枚举类的构造器只能使用private权限修饰符;
(4)枚举类的所有实例必须在枚举类中显式列出,多个对象之间使用",“隔开,末尾使用”;"结束。
列出的实例系统会自动添加 public static final 进行修饰;
(5)必须在枚举类的第一行声明枚举类对象;
(6)若枚举类只有一个枚举对象, 则可以作为一种单例模式的实现方式。
3.实例//使用enum关键字定义枚举类
public enum Season2 {
//1.提供当前枚举类的对象,多个对象之间使用","隔开,末尾使用";"结束
//系统默认使用public static final修饰
SPRING("春天","鸟语花香"),
SUMMER("夏天","夏日炎炎"),
AUTUMN("秋天","秋高气爽"),
WINNER("冬天","寒风瑟瑟");
//2.声明Season对象的属性,又因为枚举类对象的属性不应允许被改动, 所以应该使用 private final修饰
private final String seasonName;
private final String seasonDesc;
//3.枚举类的构造器只能使用 private 权限修饰符
// 私有化构造器是为了保证不能在类的外部创建其对象,否则就不能确定对象的个数
private Season2(String seasonName, String seasonDesc){
this.seasonName=seasonName;
this.seasonDesc=seasonDesc;
}
//其他需求:获取枚举类对象的属性
//只需要提供属性的get方法即可,但是不能提供set方法,而且也不允许提供set方法,因为枚举类是不可变的常量类,不能被修改
public String getSeasonName() {
return seasonName;
}
public String getSeasonDesc() {
return seasonDesc;
}
}
public class SeasonTest {
public static void main(String[] args) {
Season2 spring = Season2.SPRING;
System.out.println(spring);//SPRING
}
}

以上就是enum在java枚举中的使用,作为枚举中的基础类,是需要每个初学者都掌握的基本知识点,学会后才能进一步深入更多enum用法的讨论。