Datentypen eine Methode mit zwei möglichen Rückgabewerten

lafilia

Mitglied
Hallo,

eine vermutlich blöde Frage, aber ich weiß einfach nicht, wie ich Folgendes lösen soll:

Ich habe ein Objekt Spieler mit der Exemplarvariablen spielVerhalten.
Das Spielerobjekt hat entweder spielVerhaltenA oder spielVerhaltenB.
Auf dem Spieler wird nun eine Methode spielZug() aufgerufen, welche der Spieler eigentlich nur an sein spielVerhalten weitergibt.
Nun liefern die beiden spielVerhalten-Objekte aber verschiedene Rückgabetypen. Das eine ein int und das andere ein Array.
Dass ich das Verhalten kapsele, soll ja nun aber eigentlich dazu führen, dass ich sagen kann spieler.spielZug(), ohne dass ich weiß, was der Spieler für ein spielVerhalten hat.
Aber nun muss ich ja im Spieler bei der Implementation der Methode den Rückgabetyp angeben und würde natürlich gerne reinschreiben: int oder Array.

Mir ist bisher nichts Besseres eingefallen, als eigene Klassen zu schreiben, die Integer und Array erweitern und zusätzlich noch ein selbst definiertes Interface implementieren, nur um eine Schnittstelle zu schaffen.
Aber so ein leeres Interface, das wirklich nur als Schnittstelle gilt, ist doch irgendwie unschön, oder?

Gibt es da einen einfacheren und schöneren Weg?

Vielen Dank für die Hilfe!
 
B

bone2

Gast
warum haben bei dir objekte die sich sehr ähnlich anhören so grundunterschiedliche rückgabewerte? passe sie doch einfach an

eine methode kann soweit ich weiß immer nur 1 rückgabewert haben.
 

XHelp

Top Contributor
Wenn du an solche Fragen stößt, dann ist das ein Zeichen dafür, dass das Design nicht stimmt. Spielverhaltenobjekte sollten ja einen gemeinsamen Nenner haben (Interface o.ä.), dann erübrigt sich die Frage. Oder du machst ein Interface zu dem Rückgabe wert, wo du dann "machwas()" definierst, wo irgendetwas entweder mit der Zahl oder dem Array (je nach Implementierung) passiert...
Aber egal was du machst, erstmal von Anfang an deine Struktur überdenken.
 

henpara

Bekanntes Mitglied
eine methode kann soweit ich weiß immer nur 1 rückgabewert haben.
das ist richtig.

einfach ein objekt rückgabe erstellen, welches für beide Spielverhalten den Rückgabewert enthält, also bei dir einmal inr und ein Array. zudem gibst du dem objekt noch eine boolean / int variable, die angibt, welches verhalten genommen wird. darauf musst du dann im spieler.zug rücksicht nehmen.

mfg
 

Landei

Top Contributor
Deine Vorgehensweise läßt sich verallgemeinern, so dass du die "zweigeteilte" Rückgabeklasse überall wiederverwenden kannst. In anderen Sprachen (wie Haskell, Scala) heißt diese Klasse "Either" (mit den Untertypen Left und Right).

Mal aus'm Kopf:
Java:
public abstract class Either<L,R> {
     private final L l;    
     private final R r;    

     private Either(L l, R r) {
        this.l = l;
        this.r = r;
     }

     public L getLeft() { 
        if(l == null)  throw new IllegalArgumentException(); 
        return l; 
     }
     public R getRight() { 
        if(r == null)  throw new IllegalArgumentException(); 
        return r; 
     }

    public boolean isLeft() { return l != null; }
    public boolean isRight() { return r != null; }

    public static <A,B> Either<A,B> left(A a)  {
        if (a == null) { throw new IllegalArgumentException(); } 
        return new Either<A,B>(a, null);
    } 

    public static <A,B> Either<A,B> right(B b)  {
        if (a == null) { throw new IllegalArgumentException(); } 
        return new Either<A,B>(null, b);
    } 

}

Leider ist der Umgang in Java damit etwas hakelig, weil überall die Generics dranhängen müssen und das Auspacken nur umständlich über ein if geht.

Java:
public Either<Integer, int[]> method() {
     if (java.util.Math.random() > 0.5) {
         return Either.<Integer,int[]>left(42);
     } else {
         return Either.<Integer,int[]>right(new int[]{1,2,3});
     } 
} 

...

Either<Integer, int[]> either = method();
if(either.isLeft()) {
  int i = either.getLeft();
  ...
} else {
  int[] array = either.getRight();
  ...
}

Der Vorteil ist aber, dass du nicht immer sofort die Werte "auspacken" musst, sondern es auch praktischer sein kann, mit dem Either weiterzuarbeiten (wodurch man sich manchmal methodenüberladungen u.s.w. sparen kann).
 

lafilia

Mitglied
Erst mal Danke für eure schnellen Antworten.

Sry, ich hab vor lauter Verwirrung eine völlig unsinnige Erklärung für diese Konstellation aufgeschrieben.

Es geht darum, dass ich die Methode spielzug(int spielzuNr) aufrufen möchte und je nach mitgegebenen Parameter ein anderer Typ (int, Array) zurückkommt.
Dort, wo die Methode spielzug() tatsächlich aufgerufen wird, wird nach diesem Rückgabewert entschieden, was weiter passiert. Aber es wäre schön, wenn ich sie als nur eine Methode in meiner Klasse spieler implementieren könnte, weil der nämlich nur wissen soll, dass er einen Spielzug ausführt und nicht mehr.
Ich hoffe, das ist einigermaßen verständlich.
 

AlexSpritze

Bekanntes Mitglied
Aber es wäre schön, wenn ich sie als nur eine Methode in meiner Klasse spieler implementieren könnte, weil der nämlich nur wissen soll, dass er einen Spielzug ausführt und nicht mehr.
Ich hoffe, das ist einigermaßen verständlich.

Das klingt für mich danach, dass du deinen Rückgabewert als eigenes Objekt implementieren könntest, das entsprechende Methoden
Code:
getInt()
oder
Code:
getArray()
hat.
 
B

bone2

Gast
das ist die oben erklärte idee, und entspricht deinen bedürfnissen:

Java:
import java.util.Arrays;


class Test {
    public static void main(String [] args) {
        Antwort ergebniss = spielZug(6);

        if (ergebniss.isInt()) {
            System.out.println("int rückgabe: " + ergebniss.getInt());
        }
        else {
            System.out.println("array rückgabe: " + Arrays.toString(ergebniss.getArray()));
        }
    }

    public static Antwort spielZug (int spielZugNr){
        if (spielZugNr < 5){
            return new Antwort(3);
        }
        else {
            int[] antwortArray = {1,2,3};
            return new Antwort(antwortArray);
        }
    }
}

class Antwort {
    private boolean typ;
    private int[] array;
    private int zahl;

    public Antwort(int zahl) {
        this.typ = true;
        this.zahl = zahl;
    }

    public Antwort(int[] array) {
        this.typ = false;
        this.array = array;
    }

    public boolean isInt() {
        return typ;
    }

    public int getInt() {
        return zahl;
    }

    public int[] getArray() {
        return array;
    }

}
 
Zuletzt bearbeitet von einem Moderator:

Landei

Top Contributor
Das ist doch im Prinzip das Gleiche, wie ich gepostet habe, nur ohne Generics und deshalb nicht "wiederverwendbar".
 
B

bone2

Gast
Im Prinzip schon, nur wurde deine Lösung ja entweder überlesen, gekonnt ignoriert oder nicht verstanden. lafilia könnte sich ja nochmal melden
 

tfa

Top Contributor
Das ist doch im Prinzip das Gleiche, wie ich gepostet habe, nur ohne Generics und deshalb nicht "wiederverwendbar".
Die "Antwort"-Lösung finde ich verständlicher und durchschaubarer als eine "abstrakte" Either-Klasse mit L- und R-Objekten . Es ist sicherlich auch leichter zu erweitern bzw. anzupassen (falls doch mal eine dritte Spielzugvariante hinzukommt).
 

ThreadPool

Bekanntes Mitglied
Man kann auch anstelle eines "int" oder eines Arrays von ints auf eine Menge abstrahieren, das Verhalten gibt dann eine Menge von Zügen zurück und eine Menge kann ja auch einelementig sein. Das wäre einfach durchschaubar und klar. Dennoch werde ich das Gefühl nicht los das mit dem Design vom OT irgendwas nicht stimmt.
 

Andi_CH

Top Contributor
Ich bin mir nicht sicher ob der TO einen array von int will - dann hat er ja gar kein Problem.

Einfach den einen int in einen einen array der Länge 1 verpacken ....
 
G

Gast2

Gast
Und wie willst du dann unterscheiden ob a oder b zurückgeben wird? b könnte ja auch nur ein Element enthalten. Ich schließe mich jedenfalls ThreadPools Meinung an - das Design scheint nicht gut gewählt.

Evtl kann der TO ja mal ein bisschen mehr von seiner Architektur preisgeben damit man vernünftige Vorschläge machen kann.
 
B

bone2

Gast
der int array war nur ein beispiel, der informationsgehalt der frage ist halt wie üblich etwas mangelhaft

aber ThreadPool hat eh recht, das design scheint arg fraglich
 

ThreadPool

Bekanntes Mitglied
aber ThreadPool hat eh recht, das design scheint arg fraglich

Die Grundidee ist nicht schlecht und auch gängig, d.h. man trennt die Client-Schnittstelle von der "Service-Provider-Schnittstelle", was z.B. dem Bridge-Muster sehr ähnlich ist. Auch versucht der OT augenscheinlich "Komposition" vor Vererbung zu bevorzugen. Vll. haut einfach inhaltlich irgendwas nicht so ganz hin. Und vll. ist es auch schon damit getan grundsätzlich ein Array zurückgeben zu lassen etc. pp. Aber um das beurteilen zu können müsste mehr von der Architektur zu sehen sein wie Fassy schon anmerkte.
 

lafilia

Mitglied
Erst mal vielen Dank für das rege Interesse an meinem Problem ;)

Ich wollte es vermeiden, der Frage einen riesigen Informationshaufen anzufügen.
Aber ihr habt vermutlich Recht damit, dass das Problem die grundsätzliche Architektur ist. Deshalb verlagere ich die Diskussion mal ein wenig.

Die ganze Anwendung soll es Spielern ermöglichen, über RMI gegen einander oder wahlweise einen Computerspieler zu spielen. Das Ganze soll natürlich verteilt laufen, theoretisch aber auch lokal ausführbar sein und vor allem erweiterbar (neue Spielart, GUI (bisherige Anforderung nur Konsole).

Das bisherige Konzept sieht vor, dass der Server für jedes Spiel einen Gamecontroller erstellt, der als eigener Thread läuft und die beiden Spieler mitgegeben bekommt.
Der Gamecontroller soll nun natürlich nicht wissen, mit was für einem Spieler er es zu tun hat, einem menschlichen oder einem computergesteuerten. Zudem soll der Spieler auch spielunabhängig verwendet werden können, darf also keine spielspezifische Logik implementieren.
Deshalb die Idee, sein Spielverhalten zu kapseln und eine Oberklasse Spielverhalten und zwei Unterklassen SpielverhaltenMensch und SpielverhaltenComputer zu erstellen.
Die Oberklasse sollte hier die Gemeinsamkeit implementieren, Aufrufen vom Gamecontroller den entsprechenden Spielzug zuzuordnen und die jeweiligen Unterklassen sollten zusätzlich die Kommunikation zur jeweiligen Intelligenz übernehmen. Das SpielverhaltenComputer ruft dabei Methoden auf seiner Intelligenz auf und das Spielverhalten Mensch kommuniziert mit dem richtigen Spieler, macht also Ausgaben und liest Eingaben.
An dieser Stelle stoße ich mich eigentlich zum ersten Mal. Denn eigentlich versuche ich hier, mit einer Lösung zwei verschiedene Probleme zu lösen. Einerseits versuche ich das Spielverhalten für ein konkretes Spiel zu kapseln und andererseits trenne ich die verschiedenen Kommunikationsarten zur 'Inteligenz'.
Müsste ich nun ein anderes Spiel implementieren, wären natürlich alle drei Klassen hinfällig. Auf der anderen Seite muss ja nun mal die Spiellogik auch irgendwo hin.
Durch diese gewollte Trennung der Spiellogik von der Spielerklasse entstand auch die etwas unglückliche spielzug(int SpielzugNr)-Methode. Der Gamecontroller sollte lediglich diese eine Methode im Spieler aufrufen können und die konkrete Ausführung sollte dem Spielverhalten überlassen werden. Das sollte zunächst die Spielzugnummer einem gewollten Spielzug zuordnen, in meinem konkreten Beispiel Schiffe versenken wäre das beispielsweise setzeUBoot(); und dann diese Methode ausführen. Schließlich sollte das Spielverhaltenobjekt über den Spieler das Ergebnis seines Spielzuges als Rückgabetyp liefern, dass der Gamecontroller mit Hilfe seines Regel-Objektes prüft, den Spieler bei Regelinkonformität den Spielzug erneut durchführen lässt und ansonsten den Spielzug auf den Spielbrettern umsetzt. Die Spieler haben also ihre Spielbretter nicht selber, sondern der Gamecontroller verwaltet diese, da er ja auch ständig zur Prüfung und Entscheidung über den weiteren Spielverlauf auf sie zugreifen muss.

Mir leuchtet aber selber ein, dass dies keine schöne Lösung ist.

Mein Problem ist also eigentlich, dass ich gerne den Spieler von der Spiellogik unabhängig halten möchte (auch eine klare Anforderung der Anwendung).

Ich hoffe, die Beschreibung dieses Anwendungsteils reicht aus, um die Problematik und das bisherige Konstrukt ausreichend zu beschreiben.

Für Anregungen und Kritik bin ich mehr als dankbar ;)
 

lafilia

Mitglied
kleine Ergänzung:

dem Spieler die Methode macheSpielzug() geben, die immer nur ein int zurückgibt und zusätzlich setzeSchiff(int Schiffgroeße), die ein int[] zurückgibt.
Es wäre bei dieser Lösung natürlich nicht ohne weiteres möglich, den Spieler für ein anderes Spiel genauso zu übernehmen. Allerdings wäre das ja nun vorher auch nur bedingt möglich gewesen. int[] als Rückgabetyp ist ja auch nicht in jedem Spiel möglich.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Ein Objekt and eine Methode übergeben zwei Schreibweisen? Java Basics - Anfänger-Themen 6
M Zwei Threads greifen auf eine Methode einer Klasse zu. Komplikationen? Java Basics - Anfänger-Themen 18
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
L Methoden Eine Methode um zu testen ob es ein Nachbar gibt Java Basics - Anfänger-Themen 10
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
berserkerdq2 Wozu benötigt man den BiPredicate, kann ich nicht einfach eine normale Methode nutzen, statt BiPredicate? Java Basics - Anfänger-Themen 3
berserkerdq2 Habe eine Klasse, welche public ist, diese hat eine public Methode, die nicht static ist. Wenn ich nun versuche aufzurufen Probleme? Java Basics - Anfänger-Themen 8
berserkerdq2 Ich gebe eine ArrayList als List zurück per MEthode, wie kann ich nun aber die ArrayList speichern? Java Basics - Anfänger-Themen 46
M Eine Methode die erkennt ob die ein gegebene zahl größer oder kleiner sein muss Java Basics - Anfänger-Themen 2
H Eine Methode über Actionlistener beenden Java Basics - Anfänger-Themen 8
M Wie kann eine Methode für ein vorhandenes "Array von char" einen Index-Wert zurückliefern? Java Basics - Anfänger-Themen 3
M Wie kann eine Methode (string) eine andere Methode (void) mit zufälligen int-Werten aufrufen? Java Basics - Anfänger-Themen 4
M Wie verknüpfe ich eine Bedingung mit einer Methode ohne if-Verzweigung & Bedingungsoperator? Java Basics - Anfänger-Themen 2
M Wie kann eine Methode eine andere Methode um Werte wie z.B. 1 erhöhen? Java Basics - Anfänger-Themen 6
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7
B eine methode erstellen Java Basics - Anfänger-Themen 7
B Eine Methode erstellen Java Basics - Anfänger-Themen 3
bensdt Klasse erweitern um eine Methode "void decrement()" Java Basics - Anfänger-Themen 5
A Kann man eine Methode als Variable speichern und danach noch verändern? Java Basics - Anfänger-Themen 6
M Wie lang eine Funktion/Methode? Java Basics - Anfänger-Themen 51
scratchy1 Kann man in einer Methode eine andere aufrufen? Java Basics - Anfänger-Themen 2
scratchy1 Wie deklariert man eine Methode, die ein Objekt zurückgeben soll? Java Basics - Anfänger-Themen 22
J Methoden Suche effiziente Implementierung für eine Methode Java Basics - Anfänger-Themen 3
S Wie erstelle ich eine Vorbedingung für eine Variable einer Methode ? Java Basics - Anfänger-Themen 5
R Eine Schleife durch eine Methode schließen? Java Basics - Anfänger-Themen 4
B Wie kann ich eine Methode einer selbst erstellten Klasse statisch importieren? Java Basics - Anfänger-Themen 5
S Methoden Beim Start meines Projektes eine Methode ausführen Java Basics - Anfänger-Themen 14
M Methoden Int einer Methode an eine andere Methode übergeben Java Basics - Anfänger-Themen 4
H Innerhalb einer Methode eine Variable der aufrufenden Methode ändern? Java Basics - Anfänger-Themen 2
TomatenBrot447 Mit toString eine Ausgabe liefern wie in einer schon implementierten Methode ? Java Basics - Anfänger-Themen 13
TomatenBrot447 Mit toString eine Ausgabe liefern wie in einer schon implementierten Methode ? Java Basics - Anfänger-Themen 1
B Hilfe bei eine Java-Methode Java Basics - Anfänger-Themen 4
G Wie rufe ich eine Methode außerhalb eines Projektes auf? Java Basics - Anfänger-Themen 18
P Variablen Wie kann ich eine lokale Variable in eine andere Methode einfügen? Java Basics - Anfänger-Themen 27
G Gibt es eine Methode die bei einem StringBuilder n mal das Zeichen c hinzufügt? Java Basics - Anfänger-Themen 6
V Vererbung (wie) kann man eine 'super'-Methode auf ein Objekt anwenden ? Java Basics - Anfänger-Themen 6
TheMenox Methoden Bestimmung an welche Methode eine andere Methode ihren Wert weitergeben soll Java Basics - Anfänger-Themen 35
M Best Practice Wann eine Methode schreiben ? Java Basics - Anfänger-Themen 14
G return-wert für eine Methode Java Basics - Anfänger-Themen 1
C Rekursion überführen in eine normale methode Java Basics - Anfänger-Themen 1
H Ist Math.Random() eine Methode oder ein Methodenaufruf (Klausurfrage) Java Basics - Anfänger-Themen 4
F Um 14:00 eine Methode aufrufen Java Basics - Anfänger-Themen 5
T unterklasse will eine methode von der oberklasse nutzen Java Basics - Anfänger-Themen 4
F Problem bei eshop -> Ausführen einer Methode über eine Shopverwaltung Java Basics - Anfänger-Themen 6
O Timeout für eine Methode festlegen Java Basics - Anfänger-Themen 3
llabusch Operatoren Methode um eine Zahl zu quadrieren Java Basics - Anfänger-Themen 1
D Methoden für was eine set zur get - Methode ?? Java Basics - Anfänger-Themen 3
F Teil eines Byte Array an eine Methode übergeben Java Basics - Anfänger-Themen 5
G Erste Schritte Timer: In einem festgelegten Intervall eine Methode ausführen Java Basics - Anfänger-Themen 6
S Methoden Rückgabewert einer Methode als Parameter an eine andere Methode übergeben, geht das? Java Basics - Anfänger-Themen 5
S Methoden void-Methode: Wieso gibt es eine Rückgabe? Java Basics - Anfänger-Themen 5
M Wert von globalen Variablen über eine Methode ändern Java Basics - Anfänger-Themen 8
T Probleme eine Methode zu schreiben Java Basics - Anfänger-Themen 20
J Methode um eine HTML-Datei zu öffnen Java Basics - Anfänger-Themen 10
B auf private Variable durch eine Methode zugreifen Java Basics - Anfänger-Themen 8
P Methoden Erklärung wie ich eine spezielle Methode richtig anwende Java Basics - Anfänger-Themen 9
R eine Methode automatisch wiederholen Java Basics - Anfänger-Themen 12
V Mit JS eine JAVA Methode aufrufen Java Basics - Anfänger-Themen 5
O Überprüfen ob eine Methode ausgeführt wurde Java Basics - Anfänger-Themen 10
T Methode, die eine 2 dimensionale Matrix kopiert. Java Basics - Anfänger-Themen 16
L Methoden Eine Methode aus einer anderen Klasse aufrufen Java Basics - Anfänger-Themen 4
W Methoden Wie wird eine Methode hier aufgerufen? Java Basics - Anfänger-Themen 5
E Methoden Wie kann ich eine Methode so schreiben, dass Methodenaufruf polymorph erfolgen kann? Java Basics - Anfänger-Themen 8
D Von einer Methode auf eine lokale Variable in der Main zugreifen? Java Basics - Anfänger-Themen 15
F Klassen DataBuffer - Methode um Array in eine Bank zu schreiben Java Basics - Anfänger-Themen 3
W Eine Methode schreiben, ob eine Matrix eine Diagonalmatrix ist.? Java Basics - Anfänger-Themen 3
H Eine Methode mehrere Werte zurückgeben lassen Java Basics - Anfänger-Themen 7
E Variable aus einer Methode heraus in eine andere Klasse übergeben Java Basics - Anfänger-Themen 13
maddin86 Eine Methode für ein- und zweidimensionale double Felder als Parameter? Java Basics - Anfänger-Themen 5
H Reflexion: Eine Methode, beliebig viele Parameter (Java 1.4.2) Java Basics - Anfänger-Themen 8
1 OOP Zugriff auf eine Methode nur einmal die Sekunde Java Basics - Anfänger-Themen 8
E Methode gesucht die eine Abfolge von Ereignissen festsetzt. Java Basics - Anfänger-Themen 3
B Eine Methode für alle Subklassen aufrufen? Java Basics - Anfänger-Themen 8
A Einer Methode eine andere Methode übergeben Java Basics - Anfänger-Themen 6
Darth Simple Übergabe eines Strings an eine Methode Java Basics - Anfänger-Themen 3
L Aus einer Methode eine eigene Klasse machen - modular coden Java Basics - Anfänger-Themen 14
O Beim Schließen JDialog, im Frame-Owner eine Methode starten Java Basics - Anfänger-Themen 6
G Wie greife ich auf eine Methode zu? Java Basics - Anfänger-Themen 8
G Was passiert mit eine Methode bei einer Instanz Java Basics - Anfänger-Themen 13
G primitive Datentypen als Referenz an eine Methode übergeben Java Basics - Anfänger-Themen 2
N Wann muss eine Methode - protected sein wann public wann. Java Basics - Anfänger-Themen 5
K Eine Neue Methode Schreiben . Java Basics - Anfänger-Themen 15
StudentXYZ Auf Objekte zugreifen, die eine andere Methode initialisiert Java Basics - Anfänger-Themen 2
M Wert von einer Methode in eine Andere übergeben Java Basics - Anfänger-Themen 6
B Wie eine Methode aufrufen? Java Basics - Anfänger-Themen 2
G JComboBox um eine Methode erweitern Java Basics - Anfänger-Themen 2
E eine 'showDialog'-Methode erstellen Java Basics - Anfänger-Themen 9
B Wie aus instanzierter Klasse eine Methode der Main-Klasse Java Basics - Anfänger-Themen 9
M Methode einer Klasse in eine andere Übergeben Java Basics - Anfänger-Themen 4
T gibt es eine methode die einem alle Strings zurückliefert? Java Basics - Anfänger-Themen 7
G eine methode die zählt Java Basics - Anfänger-Themen 3
H strings in eine andere methode übergeben? Java Basics - Anfänger-Themen 6
W Eine Methode, mehrfacher gleichzeitger Ablauf möglich? Java Basics - Anfänger-Themen 2
A Wert einer Variable an eine Methode in einer anderen Klasse. Java Basics - Anfänger-Themen 4
M Brauche ein Beispiel für eine set() get() Methode Java Basics - Anfänger-Themen 4
M Konstruktor eine statische Methode? Java Basics - Anfänger-Themen 9
G Eine Methode zum Warten? Java Basics - Anfänger-Themen 7
G Auf eine Methode zugreifen Java Basics - Anfänger-Themen 2
B in einer Methode eine andere Methode aufrufen Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben