Estoy tratando de evitar un error de compilación ("Bound mismatch: ...") relacionado con la búsqueda de enum dinámica.Enum.valueOf (Clase <T> enumType, String name) pregunta
Básicamente quiero lograr algo como esto:
String enumName = whatever.getEnumName();
Class<? extends Enum<?>> enumClass = whatever.getEnumClass();
Enum<?> enumValue = Enum.valueOf(enumClass, enumName);
lo que haga, siempre termino con ese error de compilación. Honestamente, los genéricos y las enumeraciones son bastante alucinantes para mí ...
¿Qué estoy haciendo mal aquí?
La pregunta se refiere a las enumeraciones, genéricos y la reflexión. Si ignora los genéricos ¿Para qué sirven los "tipos raros" como "Class extends Enum>". –
El punto es que a) no puede funcionar de otra forma sin un método o tipo de ayuda yb) sabemos con certeza que cualquier 'Clase extends Enum> 'también satisfará' Class> '(porque esa es la manera en que funcionan las clases enum) aunque no hay forma de verificar eso sin una variable de tipo. '@ SuppressWarnings' es una anotación que solo debería usar si sabe lo que está haciendo, y lo sé. –