emuns特殊的单例模式实例
枚举实现方法继承的写法
**
* 类型
*
* @author tonfu.chia
* @since 2019-09-05 09:53:37
*/
@Getter
public enum RecordType {
//充值
RECHARGE(10, "充值") {
@Override
public String say(Long amount) {
System.out.println("充值金额:"+amount);
return "充值完成";
}
},
//冻结
FREEZE(20, "冻结") {
@Override
public String say(Long amount) {
System.out.println("冻结金额:"+amount);
return "冻结完成";
}
},
//解冻
UNFREEZE(30, "解冻") {
@Override
public String say(Long amount) {
System.out.println("解冻金额:"+amount);
return "解冻完成";
}
},
//消费
CONSUME(40, "消费") {
@Override
public String say(Long amount) {
System.out.println("消费金额:"+amount);
return "消费完成";
}
};
private Integer code;
private String message;
public abstract String say(Long amount);
RecordType(Integer code, String message) {
this.code = code;
this.message = message;
}}
可以实现根据不同枚举值实现不同操作的设计,也有人说这是枚举工厂类