Sto cercando di aggirare un errore di compilazione ("Abbinamento legato: ...") relativo alla ricerca dinamica di enum.Enum.valueOf (Classe <T> enumType, nome stringa) domanda
Fondamentalmente voglio ottenere qualcosa di simile:
String enumName = whatever.getEnumName();
Class<? extends Enum<?>> enumClass = whatever.getEnumClass();
Enum<?> enumValue = Enum.valueOf(enumClass, enumName);
Qualsiasi cosa io faccia, finisco sempre con quel errore di compilazione. Onestamente, i generici e le enumerazioni sono piuttosto sconvolgenti per me ...
Cosa sto facendo di sbagliato qui?
La questione è di circa enumerazioni, farmaci generici e di riflessione. Se si ignora generici , qual è il punto? In particolare per "tipi rari" come 'Classe estende Enum>'. –
Il punto è che a) non può funzionare diversamente senza un metodo di supporto o tipo eb) sappiamo per certo che qualsiasi 'Class estende Enum> 'soddisferà anche' Classe> '(perché è così che funzionano le classi enum) anche se non c'è modo di verificarlo senza una variabile di tipo. '@ SuppressWarnings' è un'annotazione che dovresti usare solo se sai cosa stai facendo, e lo so. –