枚举
枚举是一个被命名的整型常数的集合,用于声明带标识符的常量
Q&A:常量应该封装到常量类,常量接口还是枚举类中
//使用接口
public interface Constants{
int PASS_STATUS = 0;
int ERROE_STATUS = -1;
}
//使用类
public final class Constants{
private Constants(){
}
public static final int PASS_STATUS = 0;
public static final int ERROR_STATUS = -1;
}
//使用枚举
public enum Constants{
PASS_STATUS(0);
ERROR_STATUS(-1);
private int status;
private Constants(int status){
this.setStatus(status);
}
public int getStatus(){
return status;
}
}
接口实现省略了public static final
字段,但是接口可以被继承和实现,对一个常量接口显然不合理;常量类需要对类进行硬性控制;首选还是枚举类
枚举类
当定义一个枚举类型时,每个枚举类型成员都可以看作Enum类的实例,这些枚举成员默认都被final,public,static修饰,当使用枚举类型成员时,直接使用枚举名称调用成员即可
Enum类的常用方法
方法名称 | 描述 |
---|---|
values() | 以数组形式返回枚举类型的所有成员 |