In einer Übungsaufgabe sollen verschiedene Varianten von Minesweeper implementiert werden. Ich habe also eine Oberklasse MinesweeperGame und verschiedene Unterklassen (MinesweeperGameOrig, MinesweeperGameDiag, ..... ). In der Benutzerschnittstelle soll nun zu spielbeginn entschieden werden können welche variante man spielen möchte. Ich habe versucht das so zu lösen :
Die verschiedenen varianten sollen alle den gleichen namen haben, damit ich die funktionen des spiels (spielfeld öffnen, fahne setzen, .... ) nicht für alle varianten explizit angeben muss (sondern eben nur msg.open() , msg.mark() ...) .
So wie es oben geschrieben steht kommt der Fehler: Cannot find Symbol: variable msg.
Ich habe es auch schon mit Hilfe einer switch anweisung versucht auch das hat leider nicht funktioniert.
Wie kann ich abhängig von der Eingabe des benutzers ein Objekt mit dem namen msg mit variierendem typ (spielvarianten) erzeugen???
Vielen Dank für die Hilfe
Johannes
Java:
....
int mode;
// mode wird eingelesen über benutzerschnittstelle ...
if (mode == 1) {
MinesweeperGameOrig msg = new MinesweeperGameOrig(10,10,10,10);
}
if (mode == 2) {
MinesweeperGameDiag msg = new MinesweeperGameDiag(10,10,10,10);
}
if (mode ==3) {
MinesweeperGameOrtho msg = new MinesweeperGameOrtho(10,10,10,10);
}
...
...
msg.open(3,3);
msg.mark(4,7);
Die verschiedenen varianten sollen alle den gleichen namen haben, damit ich die funktionen des spiels (spielfeld öffnen, fahne setzen, .... ) nicht für alle varianten explizit angeben muss (sondern eben nur msg.open() , msg.mark() ...) .
So wie es oben geschrieben steht kommt der Fehler: Cannot find Symbol: variable msg.
Ich habe es auch schon mit Hilfe einer switch anweisung versucht auch das hat leider nicht funktioniert.
Wie kann ich abhängig von der Eingabe des benutzers ein Objekt mit dem namen msg mit variierendem typ (spielvarianten) erzeugen???
Vielen Dank für die Hilfe
Johannes