Ich schreibe einen Code über Mafia-Spiel. aber ich habe ein großes Problem, das ich selbst nicht lösen kann.Welcher Klassenname muss in dieser Situation für Generic eingefügt werden?
Es gibt Mafia-, Polizei-, Arzt- und Bürgerklassen. Der Name ist nicht wichtig.
und jede Mafia, Polizei, Arzt, Bürger erweitert Spielerklasse.
Dann muss ich diese Objekte Objekt von diesen Klassen zu List setzen.
Mafia mafia = new Mafia();
Doctor doctor = new Doctor();
Police police = new Police();
Citizen citizen = new Citizen();
List players<?> = new ArrayList();
players.add(mafia);
players.add(doctor);
players.add(police);
players.add(citizen);
Für obigen Code funktioniert gut, der Klassenname in < geschrieben werden muss? > oben genannten Code.
Die Liste namens 'player' muss in der Lage sein, mehrere Klassen zu enthalten, die dieselbe Klasse erweitern.
Vielen Dank.
Sollte nicht der Name der Liste (Spieler) und die Oberklasse dieser Objekte (xxx erstreckt Spieler) bereits ausreichend sein, dass Art zu kennen zu benutzen? – Thomas
Sie können wie 'List players = new ArrayList <>(); ' –
procrastinator
Mögliches Duplikat von [Ausarbeiten von Polymorphismus] (https://stackoverflow.com/questions/31236388/elaborating-on-polymorphism) – Tezra