说明
Enum在Java1.5中引入的一种类型,它被用来将一组类似的值包含到一种类型当中,枚举类型的名称会被定义为独一无二的类型描述,在这一点上和常量的定义相似。使用常量定义一组值的缺点: 类型不安全。常量一般使用String或者int类型定义,程序可以传递任意的值。没有命名空间。引用常量时,只能以类的属性引用,而不是一个命名空间。 一致性差。常量被引用时,会在编译期间替换为真实的值。因此,当常量的值改变时,需要重新编译引用类,否则常量不生效。 枚举是一种特殊的类,它也可以实现接口,定义属性,定义方法。但是枚举对象不能在枚举外部进行实例化,因此它的构造方法不能说public和protected。JVM在运行期间会为每个枚举实例生成一个唯一标识。
标注:引用自百度文库
笔者本文主要使用枚举做接口统一返回ResultCode和ResultMsg
ResultCode.java
/**
* <p>Title: JdbcMode</p>
* <p>Description: 系统返回结果集代码</p>
* <p>Company: BIGBIGBU</p>
* @author FANQIBU
* @date 2017年12月29日
*/
public enum ResultCode {
/**未查到有关银行卡信息 */
NOT_FIND(1000,"未查到有关银行卡信息 !"),
/** 操作成功*/
SUCCESS(1002,"OPERATION SUCCESS!"),
/** 操作失败*/
FAIL(-1002,"OPERATION FAIL!"),
/** 系统异常*/
EXCEPTION(-8888,"哎呀!系统开小差啦!"),
/**登陆失败 */
LOGIN_FAIL(-1015,"登陆失败!请检查用户名或密码是否正确!"),
/** 未登陆*/
NO_LOGIN(-1019,"您还没有登陆,请登录后重试!"),
/** 缺少参数*/
LOSE_NECESSARY_PARAMETERS(-1020,"缺少必要参数,请检查!"),
/** 手机号格式不正确*/
PHONE_FORMAT_ERROR(-1021,"手机号格式不正确,请检查!"),
/** 手机号被占用*/
PHONE_OCCUPY(-1022,"手机号已注册,请登陆!"),
/** 验证码不正确*/
VERIFICATION_CODE_ERROR(-1023,"验证码不正确或已失效!"),
/** 原始密码错误*/
ORIGINAL_PWD_ERROR(-1024,"原始密码错误,请检查!"),
/** 图片验证码不正确*/
IMAGE_CODE_ERROR(-1025,"图片验证码不正确或已失效!");
private String mode;
private int code;
private ResultCode(int code,String mode) {
this.code=code;
this.mode = mode;
}
/**
* <p>Title: getMode</p>
* <p>Description: 获取描述</p>
* @return
*/
public String getMode() {
return mode;
}
public void setMode(int code,String mode) {
this.code=code;
this.mode = mode;
}
/**
* <p>Title: operation</p>
* <p>Description: 获取描述</p>
* @return
*/
public String operation(){
return this.mode;
}
/**
* <p>Title: getCode</p>
* <p>Description: 获取CODE</p>
* @return
*/
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
/**
* <p>Title: getByValue</p>
* <p>Description: 通过CODE获取标识</p>
* @param code
* @return
*/
public static ResultCode getByValue(int code) {
for (ResultCode resultcode : values()) {
if (resultcode.getCode()==code) {
return resultcode;
}
}
return null;
}
}