Operationen

Operationen sind Methoden, die beispielsweise auf ein Objekt bzw. Befehl zugreifen, aufrufen oder einen Wert zurückgeben.

setText()

Defininiert eine eine Zeile, welche das Programm anzeigen soll. Wenn der Inhalt "null" ist oder ein leerer String wird nichts angezeigt.
Syntax:
public void setText(String text)

getText()

Gibt den (Text-)String zurück, welche das Label anzeigt.
Syntax:
public String getText()

Rückgabewert:

Jede Methode in Java ist typisiert. Der Typ einer Methode wird zum Zeitpunkt der Definition festgelegt und bestimmt den Typ des Rückgabewerts. Dieser kann von einem beliebigen primitiven Typ, einem Objekttyp oder vom Typ void sein. Die Methoden vom Typ void haben gar keinen Rückgabewert und dürfen nicht in Ausdrücken verwendet werden. Sie sind lediglich wegen ihrer Nebeneffekte von Interesse und dürfen daher nur als Ausdrucksanweisung verwendet werden.

Hat eine Methode einen Rückgabewert (ist also nicht vom Typ void), so kann sie mit Hilfe der return-Anweisung einen Wert an den Aufrufer zurückgeben. Die return-Anweisung hat folgende Syntax:

return Ausdruck;

Wenn diese Anweisung ausgeführt wird, führt dies zum Beenden der Methode, und der Wert des angegebenen Ausdrucks wird an den Aufrufer zurückgegeben. Der Ausdruck muß dabei zuweisungskompatibel zum Typ der Funktion sein. return-Anweisung hat keine unerreichbaren Anweisungen stehen und jeder mögliche Ausgang einer Funktion mit einem return versehen ist.

Parameterübergabe:

Eine Methode kann mit Parametern definiert werden. Dazu wird bei der Methodendefiniton eine Parameterliste innerhalb der Klammern angegeben. Jeder formale Parameter besteht aus einem Typnamen und dem Namen des Parameters. Soll mehr als ein Parameter definiert werden, so wird die einzelne Definitionen durch Kommata getrennt.

In Java werden Parameter grundsätzlich als Wert übergeben, d.h. die Methode erhält lediglich den Wert, den der Aufrufer bereitstellt.
So werden die Parameter in Java per call by value übergeben. Beim Aufruf einer Methode wird also der aktuelle Wert in die Parametervariable kopiert und an die Methode übergeben. Veränderungen der Parametervariablen innerhalb der Methode bleiben lokal und wirken sich nicht auf den Aufrufer aus.

Beispiel

//public class Parameteruebergabe {

public static void main(String[] args) {
Ball meinBall = new Ball();
System.out.println("Ball vor dem Wandel: " + meinBall.typ); // Handball
wandel(meinBall);
System.out.println("Ball vor dem Wandel: " + meinBall.typ); // Golfball
}

private static void wandel(Ball ball){
ball.typ = "Golfball";
ball = null;
}
}

class Ball {
String typ = "Handball";
}//

Beim folgenden Beispiel wird ein Objekt vom Typ Ball erzeugt, das zunächst die Eigenschaft Handball hat. Die Methode wandel(Ball ball) ändert dies zum Typ Golfball. Diese Änderung ist dauerhaft, bezieht sich also nicht nur auf den tatsächlichen Parameter. Das anschließende Setzen des Parameters auf null zeigt, dass hier tatsächlich der Wert, nicht die Referenz selbst geändert wurde.
Wie bereits erwähnt, sind Objektvariablen Referenzen, also Zeiger. Zwar werden auch sie bei der Übergabe an eine Methode per Wert übergeben, da innerhalb der Methode aber der Zeiger auf das Originalobjekt zur Verfügung steht (wenn auch in kopierter Form), sind Veränderungen an dem Objekt natürlich auch für den Aufrufer der Methode sichtbar. Wie in allen anderen Programmiersprachen entspricht die call by value-Übergabe eines Zeigers damit natürlich genau der Semantik von call by reference.

Sofern nicht anders angegeben, steht der Inhalt dieser Seite unter Lizenz Creative Commons Attribution-ShareAlike 3.0 License