枚举类是一个特殊的常量类,由于其特殊的设计,具有简洁性、安全性以及便捷性,在开发中被普遍使用。本文简单介绍一下如何使用Lombok进行枚举类定义。
按照阿里巴巴的规范,所有的枚举类型字段必须要有注释,说明每个数据项的用途。
这里为了节省篇幅就省略了。
普通写法:
public enum BoolEnum {
TRUE(1), FALSE(0);
private Integer value;
BoolEnum(Integer value) {
this.value = value;
}
public Integer getValue() {
return value;
}
@Override
public String toString() {
return "SeasonEnum{value=" + value + '}';
}
}
Lombok写法:
由于枚举类的构造方法强制为私有,所以@AllArgsConstructor
不需要使用access = AccessLevel.PRIVARE
。
@ToString
@AllArgsConstructor
public enum BoolEnum {
TRUE(1), FALSE(0);
@Getter
private Integer value;
}
更精简的写法:
拿掉setter
,直接暴露属性,将属性改成final
确保不会被篡改即可。
@ToString
@AllArgsConstructor
public enum BoolEnum {
TRUE(1), FALSE(0);
public final Integer value;
}