Java
Advanced OOP
Abstrakte Klassen, Enums und Records ergänzen den OOP-Werkzeugkasten für sauberere Modelle.
Abstrakte Klassen
abstract-Klassen können nicht direkt instanziert werden — sie sind Basis für Unterklassen.
Sie mischen fertige Methoden mit abstrakten, die Unterklassen ausfüllen müssen.
<abstract>
Abstrakte Basis
public abstract class Aufgabe {
public abstract boolean prüfen(String eingabe);
public void bewerten(String eingabe) {
System.out.println(prüfen(eingabe) ? "Richtig!" : "Falsch");
}
}Enums
Ein enum definiert eine feste Menge benannter Werte — typsicher statt magischer Strings.
Enums funktionieren perfekt mit switch.
<enum>
Enum
public enum Schwierigkeit {
LEICHT, MITTEL, SCHWER
}
Schwierigkeit stufe = Schwierigkeit.MITTEL;Records
record erzeugt eine unveränderliche Datenklasse mit Konstruktor, Gettern, equals und toString — in einer Zeile.
Ideal für Werte-Objekte wie Ergebnisse oder Koordinaten.
<record>
Record
public record QuizErgebnis(String modul, int punkte, int gesamt) {}
var ergebnis = new QuizErgebnis("java", 8, 10);
ergebnis.punkte(); // 8Fortschritt
Markiere die Lektion als abgeschlossen, um XP und Streak zu erhalten.