枚举类

枚举是一个被命名的整型常数的集合,用于声明一组带标识符的常数。枚举在曰常生活中很常见,例如一个人的性别只能是“男”或者“女”,一周的星期只能是 7 天中的一个等。类似这种当一个变量有几种固定可能的取值时,就可以将它定义为枚举类型。

Java 枚举类使用 enum 关键字来定义,各个常量使用逗号 , 来分割。

定义枚举类

  1. //使用enum关键字枚举类
  2. enum Season1 {
  3. //1.提供当前枚举类的对象,多个对象之间用","隔开,末尾对象";"结束
  4. SPRING("春天","春暖花开"),
  5. SUMMER("夏天","夏日炎炎"),
  6. AUTUMN("秋天","秋高气爽"),
  7. WINTER("冬天","冰天雪地");
  8. //2.声明Season对象的属性:private final修饰
  9. private final String seasonName;
  10. private final String seasonDesc;
  11. //3.私化类的构造器,并给对象属性赋值
  12. private Season1(String seasonName,String seasonDesc){
  13. this.seasonName = seasonName;
  14. this.seasonDesc = seasonDesc;
  15. }
  16. public String getSeasonName() {
  17. return seasonName;
  18. }
  19. public String getSeasonDesc() {
  20. return seasonDesc;
  21. }
  22. }

注解

定义:注解又叫元数据,一种代码级别的说明,基于jdk1.5版本之后的特性,与类、接口处于同一个层次。它可以用在包、类、方法等参数的前面,用来对这些元素进行说明,注释。

Annotation 其实就是代码里的特殊标记, 这些标记可以在编译, 类加载, 运行时被读取, 并执行相应的处理.

JDK中预定义的注解

@Override:
检测被该注解标注的方法是否继承自父类(接口)

@Deprecated:
用于表示所修饰的元素(类, 方法等)已过时

@SuppressWarnings:
压制警告(写到方法上、类上,可以压制编译器弹出的警告)
一般传入参数all:@SuppressWarnings(’all’)

自定义注解


枚举类和注解 - 图1

元注解

用于描述注解的注解

  • @Target:描述注解能够作用的位置
    • ElementType取值:
      • TYPE:可以作用于类上
      • METHOD:可以作用于方法上
      • FIELD:可以作用于成员变量上

枚举类和注解 - 图2

  • @Retention:描述注解被保留的阶段
  • @Documented:表述注解是否被抽取到api文档中
  • @Inherited:描述注解是否继承给子类




    获取注解


    含义:获取注解中定义的属性值
    枚举类和注解 - 图3