MINT üben

Klassen und Objekte im Abitur

Dreißig Übungen zu Klassendiagramm, Objektkarte, Referenz und Kapselung: lesen, prüfen, entwerfen.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Dreißig Übungen in gemischter Reihenfolge — du klickst, ziehst, ordnest, rechnest und knobelst. Jede Übung gibt dir sofort eine Rückmeldung, und zu jeder Aufgabe gibt es zwei gestufte Tipps: Der erste zeigt die Richtung, der zweite den entscheidenden Schritt. Die Chips zeigen das Anforderungsniveau: AFB I heißt wiedergeben und direkt anwenden, AFB II selbst entscheiden und verknüpfen, AFB III begründen, beurteilen oder eine Falle durchschauen. Aufgaben mit dem Chip Mix verbinden Wissen aus früheren Unterkapiteln, bei Trick steckt eine Falle drin. Fährst du über ein unterstrichenes Arbeitswort, siehst du, was es genau von dir verlangt.

A1
Kaffeemaschine im Diagramm
AFB I

Die Klasse Kaffeemaschine hat die privaten Attribute wasser und bohnen (beide Ganzzahl), einen Konstruktor ohne Parameter und drei öffentliche Operationen: kochen(tassen) liefert, ob das Kochen geklappt hat, getWasser() und getBohnen() liefern die Füllstände als Ganzzahl. Ein Schüler hat die sechs Zeilen des Klassendiagramms aufgeschrieben. Wende die Regeln der Notation an: Markiere die drei fehlerhaften Zeilen und trage jeweils die Korrektur ein.

Klicke die Zeilen an, die du für falsch hältst — dabei klappt ein Feld für die Korrektur auf. Geprüft wird beides: die Auswahl und die Korrekturen.
Attribute sind privat (-), ein Konstruktor beginnt mit c, und eine Operation mit Ergebnis trägt hinter der Klammer den Rückgabetyp: kochen liefert wahr oder falsch, also Wahrheitswert.
Gehe die Zeilen einzeln durch: Welche Zeichen stehen am Zeilenanfang, und passt jede Zeile zu dem, was im Text über die Klasse steht?
Die drei Fehler betreffen die Sichtbarkeit eines Attributs, das Zeichen vor dem Konstruktor und einen fehlenden Rückgabetyp.
A2
Aufrufe von außen
AFB II

Die Klasse Aquarium ist so entworfen:

Aquarium
- temperatur: Fließkommazahl
- fische: Ganzzahl
c Aquarium()
+ heizen()
+ einsetzen(anzahl: Ganzzahl)
+ getTemperatur(): Fließkommazahl
+ getFische(): Ganzzahl
- filterReinigen()

In einer anderen Klasse steht a ← erzeuge Aquarium(). Ordne jeden Zugriff ein: Ändert er den Zustand von a, liest er nur, oder ist er von außen gar nicht erlaubt?

Ziehe jede Karte in den passenden Korb — oder wähle sie mit Enter aus und drücke dann die Ziffer des Korbs (0 legt sie zurück).
1Ändert den Zustand
2Liest nur
3Nicht erlaubt
Aufträge wie heizen und einsetzen ändern Attributwerte, Anfragen wie getTemperatur liefern nur einen Wert. Alles mit - ist von außen nicht erreichbar: die Operation filterReinigen und die Attribute temperatur und fische, auch nicht lesend.
Achte auf das Zeichen am Zeilenanfang im Diagramm: + darf von außen genutzt werden, - nicht.
Bei den erlaubten Zugriffen entscheidet der Rückgabetyp: Ohne Rückgabetyp ist es ein Auftrag und der Zustand ändert sich, mit Rückgabetyp wird nur gelesen.
A3
Das Schließfach beschriften
AFB II

Im Bild siehst du die Klasse Schliessfach mit sechs markierten Zeilen. Analysiere jede Zeile und hefte das Etikett an den Marker, das sie am genauesten beschreibt. Ein Etikett bleibt übrig.

Wähle oben ein Etikett und klicke dann auf den passenden Marker im Bild oder in der Liste darunter. Mit der Tastatur: Tab zum Etikett, dann die Ziffer des Markers (1–6) drücken. Ein Klick auf einen beschrifteten Marker löst sein Etikett wieder. Nicht jedes Etikett wird gebraucht.
Schliessfach- nummer: Ganzzahl- inhaber: Kundec Schliessfach(n: Ganzzahl)+ getNummer(): Ganzzahl+ belegen(k: Kunde)- pruefeCode(): Wahrheitswert
    nummer hat einen einfachen Datentyp, inhaber hat den Klassentyp Kunde und speichert deshalb einen Verweis. Der Konstruktor trägt ein c. getNummer liefert einen Wert: eine öffentliche Anfrage. belegen hat zwar einen Parameter vom Typ Kunde, aber keinen Rückgabetyp: ein Auftrag. pruefeCode hat zwar einen Rückgabetyp, steht aber hinter einem Minus: eine private Operation. Eine Assoziation ist eine Linie zwischen zwei Klassen und kommt in diesem Bild nicht vor.
    Lies bei jeder Zeile zuerst das Zeichen am Anfang (-, + oder c), dann den Typ des Namens und zuletzt, ob hinter der Klammer ein Rückgabetyp steht.
    Ein Klassentyp als Parameter macht eine Operation nicht zur Anfrage, und ein Rückgabetyp macht sie nicht öffentlich: Das Zeichen am Zeilenanfang entscheidet über die Sichtbarkeit.