Java基础——枚举与注解
枚举类:
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