java枚举类型
/**
* 枚举,加密算法类型
*
*/
public enum SecretType {
MD5("MD5","MD5算法:单向算法,只有加密,没有解密"),
DES("DES","DES算法:已经被破解,对称加密"),
AES("AES","AES算法:已破解,但破解有很大的技术难度,对称加密算法,较安全");
private String desc;
private String key;
SecretType(String key,String desc){
this.key = key;
this.desc = desc;
}
/**
* 根据key返回枚举
* @param key
* @return
*/
public static SecretType getType(String key){
for(SecretType type:values()){
if(type.key.equals(key)){
return type;
}
}
return null;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
}
使用:
SecretType.MD5
SecretType.MD5.getKey()
阿里巴巴Java开发手册(正式版) 中命名规范如下:
14. 【参考】枚举类名建议带上 Enum 后缀,枚举成员名称需要全大写,单词间用下划线隔开。
说明:枚举其实就是特殊的常量类,且构造方法被默认强制是私有。
正例:枚举名字: DealStatusEnum, 成员名称: SUCCESS / UNKOWN _ REASON 。
浙公网安备 33010602011771号