MINT üben

Klassendiagramme

Zwei Textaufgaben mit Hinweisen und Erwartungshorizont: vom Diagramm zum Code und vom Code zum Diagramm.

Dein Fortschritt:
0 / 0 Aufgaben
1

Songs in der Playlist-App

AFB I–II

Emre programmiert eine Playlist-App. Bevor er Code schreibt, plant er die Klasse Song als Klassenkarte. Die Dauer eines Songs wird in Sekunden gespeichert.

Material: Klassenkarte Song
Song
  • - titel: Zeichenkette
  • - kuenstler: Zeichenkette
  • - dauer: Ganzzahl
  • - favorit: Wahrheitswert
  • c Song(titel: Zeichenkette, kuenstler: Zeichenkette, dauer: Ganzzahl)
  • + abspielen()
  • + markieren()
  • + getDauer(): Ganzzahl
  • + laengerAls(sekunden: Ganzzahl): Wahrheitswert
Emres Planung in niedersächsischer Notation
  1. Beschreibe den Aufbau der Klassenkarte. Gehe auf die drei Fächer und die Zeichen -, + und c ein.
  2. Wende die Übersetzungsregeln an und schreibe das Java-Grundgerüst der Klasse: Attribute, Konstruktor und alle Methodenköpfe. Die Rümpfe von abspielen und markieren dürfen leer bleiben.
  3. Interpretiere die Zeile + laengerAls(sekunden: Ganzzahl): Wahrheitswert: Was leistet die Methode vermutlich in der App? Gib einen Aufruf für einen Song von 3:30 Minuten mit dem Ergebnis an.

Hinweise

Hinweis zu Aufgabe a)
Oben der Name, dann …? Was bedeutet das Zeichen vor jeder Zeile für den Zugriff von außen?
Hinweis zu Aufgabe b)
- wird private, + wird public. Der Typ wandert nach vorn: - dauer: Ganzzahl → private int dauer;. Ohne Rückgabetyp steht void. Der Konstruktor hat keinen Rückgabetyp.„Anwenden“ heißt: die bekannten Regeln Zeile für Zeile auf diese Karte übertragen.
Hinweis zu Aufgabe c)
Rechne 3:30 Minuten in Sekunden um. Wofür könnte eine Playlist-App wissen wollen, ob ein Song länger als eine bestimmte Zeit ist?