韩顺平java基础-11-枚举类与注解

发布时间 2024-01-10 11:10:46作者: 森森森。。。

韩顺平java基础-11-枚举类与注解

2024.1.5-2024.1.8

枚举类

定义

概念

定义常量对象,不能被修改

语法

1. 自定义类实现枚举

  1. 构造器私有化
  2. 去掉set方法
  3. 创建静态对象(new)
  4. 优化:加入final修饰符,避免类加载

2. enum关键字实现枚举

  1. 关键字 enum替换class
  2. 创建对象:对象名+实参列表

注意

  1. 本质是 public static final Season SPRING = new Season("春天","温暖");简化成了 SPRING("春天", "温暖");
  2. 使用无参构造器时,实参列表和小括号可以省略。
  3. 如果有多个常量对象,使用 , 逗号间隔
  4. 要求将常量对象写在最前面

enum类方法使用

  1. name()返回枚举对象的名字

  2. ordinal()返回枚举对象的顺序

  3. values()返回所有枚举对象数组

  4. valueOf()将字符串转换成枚举对象

  5. compareTo()比较两个枚举对象的顺序,相减


细节

  1. 使用enum后,enum会隐式继承Enum类,因此不能继承其他类
  2. 使用enum后,依然是类,可以实现接口

注解

Override注解 @Override

重写方法

  1. 语法校验,能够校验是否是重写,如果不是重写会报错
  2. 不写仍然可行,编译器仍然会判断是否重写
  3. 只能修饰方法

Deprecated注解

表示某类已经过时,即不再推荐使用,但仍然可以使用

  1. 可以修饰方法、属性等
  2. 版本兼容过渡使用

SuppressWarnings注解

抑制警告信息

  1. 作用范围与放置位置相关
  2. 可以修饰类、方法等

元注解Annotaion

注解的注解

  1. Target 指定注解在哪些地方使用,用于哪些元素

  2. Retention 1) SOURCE 作用于编译器 2) CLASS 3) RUNTIME

  3. Document 生成文档时,保留注解

  4. Inherited 继承注解