Hallo Javagemeinde,
Ich muss für mein Programm ein Array von Klassen erstellen, wobei hier nur Klassen einer bestimmten Superklasse vorkommen dürfen. Eclipse meint allerdings "Cannot create a generic array of Class<? extends Entity>.
Wo ist das Problem denn und wie kann ich es lösen?
Danke für euer Interesse, ich weiß nicht ob es helfen würde zu erklären, in welchem Zusammenhang ich das Array brauche, deshalb verzichte ich hier dadrauf, weil das den Rahmen sprengen würde.
Mein Code sieht aktuell folgendermaßen aus:
Mein erster Versuch war folgender, allerdings lief das ganze wegen einer ClassCastException nicht:
Ich muss für mein Programm ein Array von Klassen erstellen, wobei hier nur Klassen einer bestimmten Superklasse vorkommen dürfen. Eclipse meint allerdings "Cannot create a generic array of Class<? extends Entity>.
Wo ist das Problem denn und wie kann ich es lösen?
Danke für euer Interesse, ich weiß nicht ob es helfen würde zu erklären, in welchem Zusammenhang ich das Array brauche, deshalb verzichte ich hier dadrauf, weil das den Rahmen sprengen würde.
Mein Code sieht aktuell folgendermaßen aus:
Java:
//...
private static LinkedList<Class<? extends Entity>> entities = new LinkedList<Class<? extends Entity>>();
//...
public static Class<? extends Entity>[] getEntites(){
Class<? extends Entity>[] entityArg = new Class<? extends Entity>[entities.size()];
for(int i=0; i<entityArg.length; i++){
entityArg[i] = (Class<? extends Entity>) entities.get(i);
}
return entityArg;
}
Mein erster Versuch war folgender, allerdings lief das ganze wegen einer ClassCastException nicht:
Java:
//...
private static LinkedList<Class<? extends Entity>> entities = new LinkedList<Class<? extends Entity>>();
//...
public static Class<? extends Entity>[] getEntites(){
return (Class<? extends Entity>[]) entities.toArray();
}