package com.easyway.commons.ispace.dev.lang.objects;
import com.easyway.commons.ispace.dev.lang.EnumUtils;
/**
* 枚举类是指实例的数目有限的类。在创建枚举类时,可以考虑采用以下设计模式:
* (1) 把构造方法定义为private类型。
* (2) 提供一些public static final 类型的静态变量,每个静态变量引用类的一个实例。
* (3) 如果需要的话,提供静态工厂方法,允许用户提供根据特定参数获得与之匹配的实例。
*
*
* 清理周期
* @author longgangbai
*
*/
public enum CycleType {
YEAR(0,"每年","Y"),MONTH(1,"每月","M"),DAY(2,"每天","D");
private final int code;
private final String name;
private final String value;
private CycleType(int code,String name,String value)
{
this.code=code;
this.name=name;
this.value=value;
}
public String getValue() {
return value;
}
public int getCode() {
return code;
}
public String getName() {
return name;
}
public static CycleType getCycleTypeByCode(int code){
return EnumUtils.fromEnumProperty(CycleType.class, "code", code);
}
public static CycleType getCycleTypeByName(String name){
return EnumUtils.fromEnumProperty(CycleType.class, "name", name);
}
public static CycleType getCycleTypeByValue(String value){
return EnumUtils.fromEnumProperty(CycleType.class, "value", value);
}
}