J'espérais déclarer en type Enum dans une sous-classe et y accéder à partir de la super classe. C'est ce que je suis venu avec, mais il ne fonctionne pas:Java - Pouvez-vous accéder à une Enum déclarée dans la sous-classe de la classe Super?
class Subclass {
enum Pets {
CAT,
DOG;
}
Class<Pets> getEnumClass() {
return Pets.class;
}
}
class Superclass {
// This generates a warning:
abstract Class<? extends Enum> getEnumClass();
void PrintEnumNames() throws InstantiationException, IllegalAccessException {
Class<? extends Enum> enumClass = getEnumClass();
Enum newEnum = enumClass.newInstance();
for(Enum iEnum : newEnum.values()) { // newEnum.values() isn't available
System.out.printf("%s", iEnum.toString());
}
}
}