Zum Inhalt springen
Lektion 9 von 26 12 Min. Mittel Zur Übung Mit Codebeispiel

Klassen & Objekte

Objektorientierung bündelt Daten und Verhalten: Klassen sind Baupläne, Objekte ihre konkreten Instanzen.

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 zwei Objekte derselben Klasse mit unterschiedlichem Zustand erzeugt.

Warum das wichtig ist: Java ist objektorientiert. Wer Klassen versteht, versteht den größten Teil echter Java-Projekte.

Vorher hilfreich

Lerninhalt

Verstehen & anwenden

1

Klasse und Konstruktor

Felder speichern den Zustand, der Konstruktor initialisiert ihn.

this unterscheidet Felder von gleichnamigen Parametern.

classconstructorthis
Klasse Lernkarte
public class Lernkarte {
    private String frage;
    private String antwort;

    public Lernkarte(String frage, String antwort) {
        this.frage = frage;
        this.antwort = antwort;
    }
}
2

Objekte erzeugen

new ruft den Konstruktor auf und liefert eine neue Instanz.

Jedes Objekt hat eigenen Zustand, teilt aber die Methoden seiner Klasse.

new
Instanzen
Lernkarte karte = new Lernkarte("2+2?", "4");
Lernkarte andere = new Lernkarte("Hauptstadt?", "Wien");
3

Kapselung

private macht Felder von außen unzugänglich — Zugriff nur über Methoden.

Getter lesen, Setter schreiben kontrolliert. So bleibt der Zustand konsistent.

privategettersetter
Getter
public String getFrage() {
    return frage;
}

Vertiefung

Objekte sind eigene kleine Welten

Eine Klasse beschreibt, welche Daten ein Objekt hat und was es kann. Jedes Objekt besitzt seinen eigenen Zustand, teilt aber den Code der Klasse.

Variablen halten Referenzen auf Objekte. Zwei Variablen können auf dasselbe Objekt zeigen. Wenn du das verstehst, erklären sich viele unerwartete Änderungen von selbst.

Zwei Objekte, zwei Zustände
Lernkarte a = new Lernkarte("2+2?", "4");
Lernkarte b = new Lernkarte("Hauptstadt?", "Wien");

a.setAntwort("4");
b.setAntwort("Bern");

System.out.println(a.getAntwort()); // 4
System.out.println(b.getAntwort()); // Bern

Merksatz: Klasse = Bauplan, Objekt = konkrete Instanz. Jede Instanz hat eigenen Zustand, auch wenn der Code geteilt wird.

Übungsaufgabe

Buch-Klasse

Modelliere ein Buch mit Titel, Autor und Seitenzahl. Erzeuge zwei Bücher und gib ihre Daten aus.

Das soll dein Programm können

  • Klasse Buch mit privaten Feldern
  • Konstruktor für alle drei Werte
  • Getter für die Felder
  • Eine Methode beschreibung(), die einen lesbaren Text zurückgibt

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 den Feldern. Der Konstruktor setzt sie mit this. beschreibung() kann einen String mit + zusammensetzen.

Lösung anzeigen
Buch-Klasse.java
public class Buch {
    private String titel;
    private String autor;
    private int seiten;

    public Buch(String titel, String autor, int seiten) {
        this.titel = titel;
        this.autor = autor;
        this.seiten = seiten;
    }

    public String beschreibung() {
        return titel + " von " + autor + " (" + seiten + " Seiten)";
    }

    public static void main(String[] args) {
        Buch a = new Buch("Effektives Java", "Joshua Bloch", 400);
        Buch b = new Buch("Clean Code", "Robert C. Martin", 464);
        System.out.println(a.beschreibung());
        System.out.println(b.beschreibung());
    }
}

Warum funktioniert das?

Beide Objekte nutzen denselben Code, haben aber eigene Feldwerte. Die Methode beschreibung() greift auf den Zustand des jeweiligen Objekts zu.

Aktiv-Check

Teste dein Verständnis

1/6

Erkennen: Welcher Abschnitt passt?

Welcher Abschnitt passt zu diesen Begriffen?

classconstructorthis
Tipp: Erst erinnern, dann prüfen. Fehler sind Teil des Lernens.

Spaßprojekt

Haustier-Simulator

Modelliere ein Haustier mit Name, Hunger und einer Methode füttern(). Erzeuge zwei Tiere und füttere nur eines.

Selbstcheck

Kann ich das schon?

Hake ab, was du wirklich erklären oder selbst bauen könntest.

0 von 3 geschafft

Fortschritt

Bereit zum Abschließen?

Markiere die Lektion als abgeschlossen, um XP und Streak zu erhalten.

</> Learn-Program © 2026 · Lizenziert unter CC BY-NC-SA 4.0

Rechtliches & Lizenz