Klassen verbinden

lorenzoo

Mitglied
Hallo zusammen 🙂
Ich wollte dieses VierGewinnt in 2-3 Klassen Teilen, mein Problem ist es das er die Methoden nicht erkennt. ich weis nicht woran es liegt. Ich denke mal am void.
wäre sehr dankbar wen jemand mir das erklärt oder Codebeispiele zeigt.
MFG
 

Anhänge

Du musst die Klasse davor schreiben. Die Methode feldÜberprüfen ist ja nicht in deiner VierGewinnt Klasse deklariert. Also:
Java:
Gewinner_ermitteln.feldÜberprüfen
 
Ja welchen denn? Musst schon etwas mehr Informationen geben.

Vermutlich diesen hier:
Java:
Gewinner_ermitteln = new Gewinner_ermitteln();
Da fehlt der Variablenname. Also zB:
Code:
Gewinner_ermitteln gewinnerErmitteln = new Gewinner_ermitteln();
Habs nur kurz überflogen aber das kannste ganz rauslöschen soweit ich das gesehen habe.
 
Hilfe, du solltest dir auf jeden Fall nochmal die Grundlagen von Methoden & Variablen angucken.
So war meine erste Antwort nicht gemeint:
Java:
      public static void main (String[] args) { 
      Gewinner_ermitteln.feldÜberprüfen;
    }
Das ist keine gültige Syntax und macht auch keinen Sinn. Genau wie:
Java:
    public static void main(String[] args) {
        VierGewinntv2.feldAusgeben = VierGewinntv2;
    }
Eventuell hab ich mich da schlecht ausgedrückt 😉

Die Methode feldÜberprüfen ist in der Klasse "Gewinner_ermitteln" implementiert.
Wenn du die Methode also in der Klasse "VierGewinntv2" nutzen willst musst du die Methode so aufrufen:
"Gewinner_ermitteln.feldÜberprüfen(argumente)".

Also zum Beispiel:
Java:
  public static int[][] welchesFeld(int[][] feld, int spalte, int spieler) {
    if (feld[5][spalte]==0) {feld[5][spalte]=spieler;Gewinner_ermitteln.feldÜberprüfen(5, spalte,feld, spieler); return feld;}
    else if (feld[4][spalte]==0) {feld[4][spalte]=spieler;Gewinner_ermitteln.feldÜberprüfen(4, spalte,feld,spieler); return feld;}
    else if (feld[3][spalte]==0) {feld[3][spalte]=spieler;Gewinner_ermitteln.feldÜberprüfen(3, spalte,feld, spieler); return feld;}
    else if (feld[2][spalte]==0) {feld[2][spalte]=spieler;Gewinner_ermitteln.feldÜberprüfen(2, spalte,feld, spieler); return feld;}
    else if (feld[1][spalte]==0) {feld[1][spalte]=spieler;Gewinner_ermitteln.feldÜberprüfen(1, spalte,feld, spieler); return feld;}
    else if (feld[0][spalte]==0) {feld[0][spalte]=spieler;Gewinner_ermitteln.feldÜberprüfen(0, spalte,feld, spieler); return feld;}
    else{System.out.println("Ungültig! Programm wird beendet!"); System.exit(0);return null;}
  }
 
du hast in den ersten beiden klassen jeweils eine main methode.
die main methode ist der einstiegspunkt in das programm, es darf nur eine geben!
 

Zurück
Oben