1.使用场景和属性
有的时候一个类的对象是有限且固定的,这种情况下我们使用枚举类就比较方便
- enum和class、interface的地位一样,可以实现一个或则多个接口
- 使用enum定义的枚举类默认继承了java.lang.Enum,而不是继承Object类
- 枚举类的所有实例都必须放在第一行展示,不需使用new 关键字,不需显式调用构造器,系统会自动添加public static final修饰无需程序显式添加
- 枚举类默认提供了一个value()方法,该方法可以很方便的遍历所有的枚举值
- 枚举类的构造器只能是私有的
2.枚举类简单实现
实现一个转态枚举类,定义状态码与转态说明属性;定义属性的set/get 方法
public enum ProcessStatusEnum implements Status {
SUCCESS(0, "success"),
ERROR(1, "error"),
//参数异常
ILLEGAL_ARGUMETN(10001, "非法的参数"),
//数据库异常
DB_ERROR_WRITE(20001, "数据库写入异常"),
DB_ERROR_READ(20002, "数据库查询异常"),
//权限异常
NO_PERMISSION(30001, "没有权限"),
INTEGRAL_NOT_ENOUTGN(30002, "用户积分不足"),
//服务异常
SERVICE_EXCEPTION(40001, "服务异常"),
UNKNOWN_ERROR(60001, "未知的错误,请联系管理员进行处理!"),
/