学习目标
- 掌握枚举类
提示:以下是本篇文章正文内容,案例仅供参考
一、什么是枚举类?
实例(也叫对象)有限且固定不变的类,在Java里被称为枚举类。
示例代码:
public enum Demo {
Spring,Autumn,Winter,Summer;
}
例如,季节类,它只有春夏秋冬,并且不会变。
二、枚举类特点
枚举类是一个特殊的类,一样有自己的属性和方法,可以实现一个或者多个接口。
Java1.5
之后开始有枚举类。
1.枚举类语法
-
枚举类默认继承 java.lang.Enum 类,而不是 Object 类,因此枚举类
不能显示继承其他父类
。 -
使用 enum 定义的非抽象的枚举类默认会使用 final 修饰,因此非抽象枚举类
不能派生子类
(即不能被继承)。 -
枚举类的
构造器只能使用 private
访问控制符,如果忽略访问控制符的话,则默认使用 private 修饰;如果强制指定其他的访问控制符(例如public、procted等),则会报错。 -
枚举类的
所有实例必须在枚举类的第一行显示列出
,否则这个枚举类永远都不可能产生实例。列出的这些实例,系统会自动给它们加上public static final
修饰。枚举类的实例以逗号分隔,分号结束,这些列出的枚举值代表了该枚举类的所有可能的实例。
2.枚举类优点
- 使用枚举类可以使程序更加健壮,避免创建对象的随意性。
- 避免一些常量值的意义不明确。
总结
- 枚举类不可以继承其他类。
- 若每个枚举值在调用实现的接口方法呈现相同的行为方式,则只要统一实现该方法即可。
- 若需要每个枚举值在调用实现的接口方法呈现出不同的行为方式, 则可以让每个枚举值分别来实现该方法。
- 枚举类型的常量对象修饰默认为public static final