如何重新实现枚举的valueof
我需要重新实现一些枚举的enum.valueof方法,以使它们不再抛出异常,而如果枚举中不存在值,则它们仅返回null。
我正在尝试基本
@Override public static <T extends Enum<T>> T valueOf(Class<T> enumType,
String name){
但是它不起作用,说我需要重写或实现一个超级类型。
我猜想我可以开设一个超级班,但是我不确定如何将它们放在一起。有任何想法吗?
回答:
你不能 您必须定义另一个不同的方法。valueOf方法由编译器自动生成。
public static MyEnum permissiveValueOf(String name) { for (MyEnum e : values()) {
if (e.name().equals(name)) {
return e;
}
}
return null;
}
以上是 如何重新实现枚举的valueof 的全部内容, 来源链接: utcz.com/qa/406816.html