韩顺平java基础-11-枚举类与注解
2024.1.5-2024.1.8
枚举类
定义
概念
定义常量对象,不能被修改
语法
1. 自定义类实现枚举
- 构造器私有化
- 去掉set方法
- 创建静态对象(new)
- 优化:加入final修饰符,避免类加载
2. enum关键字实现枚举
- 关键字 enum替换class
- 创建对象:对象名+实参列表
注意
- 本质是
public static final Season SPRING = new Season("春天","温暖");
简化成了SPRING("春天", "温暖");
- 使用无参构造器时,实参列表和小括号可以省略。
- 如果有多个常量对象,使用 , 逗号间隔
- 要求将常量对象写在最前面
enum类方法使用
-
name()返回枚举对象的名字
-
ordinal()返回枚举对象的顺序
-
values()返回所有枚举对象数组
-
valueOf()将字符串转换成枚举对象
-
compareTo()比较两个枚举对象的顺序,相减
细节
- 使用enum后,enum会隐式继承Enum类,因此不能继承其他类
- 使用enum后,依然是类,可以实现接口
注解
Override注解 @Override
重写方法
- 语法校验,能够校验是否是重写,如果不是重写会报错
- 不写仍然可行,编译器仍然会判断是否重写
- 只能修饰方法
Deprecated注解
表示某类已经过时,即不再推荐使用,但仍然可以使用
- 可以修饰方法、属性等
- 版本兼容过渡使用
SuppressWarnings注解
抑制警告信息
- 作用范围与放置位置相关
- 可以修饰类、方法等
元注解Annotaion
注解的注解
-
Target 指定注解在哪些地方使用,用于哪些元素
-
Retention 1) SOURCE 作用于编译器 2) CLASS 3) RUNTIME
-
Document 生成文档时,保留注解
-
Inherited 继承注解