简单用法
定义常量
public enum QuotaAttribute {
QuotaCPU,
QuotaMemory
}
获取
类名.常量
如:QuotaAttribute .QuotaCPU
嵌套使用:多个枚举类
需要将其放在一个接口里,每个枚举类实现这个接口,还可以定义自己的构造函数。
/**
* 获取队列状态的接口
*/
public interface QueueStatus {
enum QueueStatusImpl implements QueueStatus {
usedPercent,
status,
background,
font;
}
enum Status implements QueueStatus {
IDLE("空闲"),
BUSY("繁忙"),
FULL("爆满");
private String name;
// 构造方法,注意:构造方法不能为public,因为enum并不可以被实例化
private Status(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
enum Background implements QueueStatus {
IDLE("#02b4491a"),
BUSY("#f5cb53a6"),
FULL("#ca2c2e");
private String name;
private Background(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
enum Font implements QueueStatus {
IDLE("#02b449"),
BUSY("#966204"),
FULL("#efece6");
private String name;
private Font(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
使用
接口.枚举类名.常量
如:QueueStatus.QueueStatusImpl.status
QueueStatus.Status.IDLE.getName()