Methoden in Java

Im Beitrag Aufbau eines Java-Programms habe ich schon eine kurze Erklärung zum Begriff der Methode gegeben. Nun folgt ein Einstieg zum Thema Methoden in Java.

Wiederholung

Eine Methode kann als eine Art „Unterprogramm“ verstanden werden, in welchem gewisse Funktionen eines Programms zusammengefasst werden können.

Die Ausführung eines Java-Programms beginnt immer bei der Main-Methode, welche wie folgt aufgebaut ist:

public static void main(String[] args) {
// Inhalt der Main-Methode
}

Schlüsselwörter

Mithilfe des Schlüsselworts public wird die Sichtbarkeit der Methode definiert. Dies bedeutet in Kurzfassung, dass die Main-Methode auch außerhalb der eigenen Klasse sichtbar ist und desshalb auch von außen aufgerufen werden kann. Zum Thema der Sichtbarkeit gibt es noch eigene Beiträge.

Das Schlüsselwort static definiert die Methode als statische Methode der Klasse. Was dies genau bedeutet werden wir in den Beiträgen zur Objektorientierung noch näher kennenlernen. Die Main-Methode muss immer statisch definiert sein.

Void bezeichnet den Rückgabetyp der Methode. Eine Methode kann nach erfolgreicher Abarbeitung des Codes im Methodenrumpf Daten an den Aufrufer zurückgeben, oder auch nicht. Wenn Daten zurückgegeben werden, so muss der Datentyp explizit angegeben werden. Void bedeutet soviel wie „Luft“ und meint, dass die Methode nichts an den Aufrufer zurückgibt. Ist eine Rückgabe gewünscht, so muss am Ende der Methode eine return-Anweisung stehen, welche den Wert zurückgibt.

Bei der Bezeichnung main handelt es sich um den Namen der Methode. Bei der Main-Methode muss der Name immer main lauten, für andere Methoden können wir den Namen selbst festlegen.

Ähnlich wie in der Mathematik können Funktionen über gewisse „Variablen“ verfügen, welche der Methode übergeben werden. Was in der Mathematik als „Variable“ bezeichnet wird heißt in Java Parameter. Der Main-Methode wird als Parameter ein String-Array mit dem Namen „args“ übergeben. Ein String-Array kann man sich als eine Liste mit Zeichenketten vorstellen. Den Datentypen Array wir noch genauer kennenlernen, lass dich daher bitte nicht verwirren!

Beispiel

Wir wollen eine Methode erhoeheUmEins implementieren, welcher eine Ganzzahl (Datentyp int) x übergeben wird. Die Methode soll diese Zahl um eins erhöhen, die Zahl auf der Konsole ausgeben und die Zahl im Anschluss an den Aufrufer zurückgeben.

public class meineErstesProgramm {

    public static void main(String[] args) {
        erhoeheUmEins(5);
    }

    public static int erhoeheUmEins(int x) {
        int ergebnis = x + 1;
        System.out.println(ergebnis);
        return ergebnis;
    }

}

Wird die Klasse meineErstesProgramm kompiliert und die Main-Methode ausgeführt, so erfolgt mit der Anweisung erhoeheUmEins(5); der Aufruf der Methode erhoeheUmEins mit dem Parameter 5. Die Zahl 5 ist in der Variable x gespeichert und wird mit der Operation x +1 um eins erhöht und anschließend in der Variable ergebnis gespeichert. In der folgenden Zeile wird ergebnis auf der Konsole ausgegeben. Mit return ergebnis erfolgt die Rückgabe des Ergebnisses an den Aufrufer. Der Aufrufer ist in diesm Fall die Main-Methode, welche mit dem Wert jedoch nichts macht. Das Programm wird wieder beendet.

Dass die Methode erhoeheUmEins tatsächlich die Zahl 6 zurückliefert, können wir sehen, wenn wir die Rückgabe in einer Variable speichern und uns diese anschließend auf der Konsole ausgeben lassen. Zum besseren Verständnis, welche der Ausgaben auf der Konsole von welcher Methode stammt, ergänze ich in der Ausgabe noch den Namen der entsprechenden Methode.

public class meineErstesProgramm {

    public static void main(String[] args) {
        int rueckgabe = erhoeheUmEins(5);
        System.out.println("Ausgabe von main: " + rueckgabe);
    }

    public static int erhoeheUmEins(int x) {
        int ergebnis = x + 1;
        System.out.println("Ausgabe von erhoeheUmEins: " + ergebnis);
        return ergebnis;
    }

}

Auf der Konsole erscheinen nun folgende Ausgaben:

Ausgabe von erhoeheUmEins: 6
Ausgabe von main: 6

Dieser Beitrag hat 2 Kommentare

Schreibe einen Kommentar