Methoden
Methoden strukturieren Verhalten in Klassen: Signatur, Rückgabetyp und Parameter sind fest deklariert.
Ansicht
01
Verstehen
Lies die Kernidee und das Beispiel.
02
Prüfen
Beantworte die Aktiv-Checks.
03
Anwenden
Setze die Transferaufgabe um.
Mini-Erfolg
Du hast eine Methode geschrieben und sie dreimal mit anderen Werten aufgerufen.
Warum das wichtig ist: Methoden sind der Unterschied zwischen einem langen Zettel und einem Programm, das du später noch verstehst.
Vorher hilfreich
Lerninhalt
Verstehen & anwenden
Signatur und Rückgabe
Eine Methode deklariert Rückgabetyp, Namen und Parameter mit Typen.
return beendet die Methode und liefert einen Wert vom deklarierten Typ.
public static int summe(int a, int b) {
return a + b;
}
int ergebnis = summe(2, 3); // 5void
void bedeutet: kein Rückgabewert.
Die Methode tut etwas, liefert aber nichts.
Typisch für Ausgaben, Speichern oder Zustandsänderungen.
public static void begrüße(String name) {
System.out.println("Hallo " + name + "!");
}Überladen und static
Mehrere Methoden dürfen denselben Namen tragen, wenn sich die Parameter unterscheiden (Ueberladen).
static-Methoden gehören zur Klasse statt zu einer Instanz — wie main oder Hilfsfunktionen.
Vertiefung
Der Call Stack
Jeder Methodenaufruf legt einen kleinen Rahmen auf den Call Stack: Parameter, lokale Variablen und die Stelle, an die danach zurückgesprungen wird. Bei einer Exception siehst du genau diesen Stapel im Stack Trace.
Methoden sollten eine klare Aufgabe haben. Wenn du den Namen nicht ohne „und“ erklären kannst, sind es oft zwei Methoden.
public static double durchschnitt(int[] werte) {
int summe = summe(werte);
return werte.length == 0 ? 0 : (double) summe / werte.length;
}
private static int summe(int[] werte) {
int summe = 0;
for (int wert : werte) summe += wert;
return summe;
}Merksatz: Methoden sind kleine Verträge: klarer Name, klare Parameter, klares Ergebnis. Der Call Stack erklärt, wie sie zusammenspielen.
Übungsaufgabe
Notenrechner mit Methoden
Schreibe drei Methoden: summe, durchschnitt und beste. Teste sie mit einem Array von Punktzahlen.
Das soll dein Programm können
- Drei separate Methoden mit Rückgabewert
- Die Methoden erhalten ein int-Array
- durchschnitt gibt ein double zurück
- Ausgabe der drei Ergebnisse in main
Schreibe den Code hier oder in deiner IDE und vergleiche ihn dann mit der Lösung.
Dein Code wird automatisch auf diesem Gerät gespeichert.
Hinweis anzeigen
Beginne mit summe. Für den Durchschnitt musst du nach double casten: (double) summe / werte.length.
Lösung anzeigen
public class Notenrechner {
public static void main(String[] args) {
int[] punkte = {72, 91, 64, 88};
System.out.println("Summe: " + summe(punkte));
System.out.println("Durchschnitt: " + durchschnitt(punkte));
System.out.println("Bestnote: " + beste(punkte));
}
static int summe(int[] werte) {
int summe = 0;
for (int wert : werte) summe += wert;
return summe;
}
static double durchschnitt(int[] werte) {
return werte.length == 0 ? 0 : (double) summe(werte) / werte.length;
}
static int beste(int[] werte) {
int max = werte[0];
for (int wert : werte) if (wert > max) max = wert;
return max;
}
}Warum funktioniert das?
Methoden dürfen andere Methoden aufrufen. durchschnitt nutzt summe wieder, statt die Summenlogik zu duplizieren. Das ist Wiederverwendung in klein.
Aktiv-Check
Teste dein Verständnis
Erkennen: Welcher Abschnitt passt?
Welcher Abschnitt passt zu diesen Begriffen?
Spaßprojekt
Notenrechner
Schreibe Methoden für Durchschnitt, Bestnote und eine textliche Bewertung. Rufe sie mit verschiedenen Punkten auf.
Selbstcheck
Kann ich das schon?
Hake ab, was du wirklich erklären oder selbst bauen könntest.
Fortschritt
Bereit zum Abschließen?
Markiere die Lektion als abgeschlossen, um XP und Streak zu erhalten.