Java基础——枚举与注解

时间:2021-12-21 11:59:09

枚举类:
  1.自定义枚举类
    1.提供类的属性,声明为private final
    2.声明为final的属性,在构造器中初始化私有化构造器, 保证不能在类的外部创建其对象
    3.通过公共的方法调用属性
    4.创建枚举类的对象:将类的对象声明为public static final
  2.关键字 enum定义枚举类
    1.enum中的常用方法
    (1)values();//以数组的形式返回整个枚举类型的所有的对象
      Season[] seasons = Season.values();//返回的是一个数组
    (2)valueOf(String name);//传入的形参是枚举类的某一个属性名,返回该属性的对象,否则会报异常
      String str = "SPRING";
      Season sea = Season.valueOf(str);//SPRING("spring", "春暖花开")
  3.如何让枚举类实现接口
    1.让类实现此接口,类的对象共享同一套接口的抽象方法
    2.让类的每一个对象都去实现接口的抽象方法,进而通过类的对象调用被重写的抽象方法时,执行的效果不同。

enum Season{
SPRING("spring", "春暖花开"),
SUMMER("summer", "夏日炎炎"),
AUTUMN("autumn", "秋高气爽"),
WINTER("winter", "白雪皑皑");

private final String seasonName;
private final String seasonDesc;

private Season(String seasonName, String seasonDesc){
this.seasonName = seasonName;
this.seasonDesc = seasonDesc;
}

public String getSeasonName(){
return seasonName;
}
public String getSeasonDesc(){
return seasonDesc;
}
}

注解:Annotation
  1.JDK内置的基本注解类型(3个)
    @Override: 限定重写父类方法, 该注释只能用于方法
    @Deprecated: 用于表示某个程序元素(类, 方法等)已过时
    @SuppressWarnings: 抑制编译器警告

  2.自定义注解类型
    以SuppressWarnings为例进行创建即可
  3.对注解进行注解(4个)(元注解)
    Retention
    Rarget
    Documented
    Inherited