Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
| modul:archiv:m320:learningunits:lu03:aufgaben:exceptions [2026/08/30 14:06] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | modul:archiv:m320:learningunits:lu03:aufgaben:exceptions [2026/08/30 14:06] (aktuell) – ↷ Seite von modul:m320:learningunits:lu03:aufgaben:exceptions nach modul:archiv:m320:learningunits:lu03:aufgaben:exceptions verschoben msuter | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ==== Aufgabe 4 - Exceptions auslösen und bearbeiten ==== | ||
| + | === Ziele === | ||
| + | * Sie können eigene Exceptions erzeugen und werfen. | ||
| + | * Sie können mit '' | ||
| + | |||
| + | === Ausgangslage === | ||
| + | In der Applikation können eine Anzahl Noten erfasst und ausgelesen werden. | ||
| + | Bisher wurde aber noch keine Fehlerbehandlung realisiert. | ||
| + | Zum Beispiel stürzt das Programm ab, wenn man eine undefinierte Noten lesen will (falscher Index). Ungültige Noten werden antgegengenommen und wenn zuviele Noten erfasst werden, passiert auch nichts. | ||
| + | |||
| + | Für eine gezielte Fehlerbehandlung definieren wir daher 3 eigene Exceptions: | ||
| + | * ListIndexException: | ||
| + | * ListRangeException: | ||
| + | * ValueRangeException: | ||
| + | |||
| + | === Vorbereitung === | ||
| + | - Laden Sie das Repo von github-classroom. | ||
| + | - Führen Sie das Programm aus. Was fällt Ihnen bezüglich dem Programmablauf auf? | ||
| + | |||
| + | === Auftrag 1: Ungültiger Index bei '' | ||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | Prüfen Sie in der Methode '' | ||
| + | </ | ||
| + | - Erstellen Sie die Klasse '' | ||
| + | - Passen Sie die Methode '' | ||
| + | - Testen Sie die Methode '' | ||
| + | |||
| + | |||
| + | === Auftrag 2: Zufügen von Noten in '' | ||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | Prüfen Sie in der Methode '' | ||
| + | </ | ||
| + | |||
| + | - Erstellen Sie die Klasse '' | ||
| + | - Passen Sie die Methode '' | ||
| + | - Testen Sie die Methode '' | ||
| + | |||
| + | === Auftrag 3: Exceptions in '' | ||
| + | In der Methode '' | ||
| + | Überall wo die Methode '' | ||
| + | <WRAP center round important 60%> | ||
| + | Falls eine Exception auftritt, wird die Standardmeldung der Exception ausgegeben. | ||
| + | |||
| + | - Prüfen Sie in einem ersten Teil des Codes die Anzahl der zugefügten Noten. | ||
| + | - Prüfen Sie dann einen ungültigen Notenwert. | ||
| + | - Prüfen Sie dann den Zugriff auf eine nicht vorhandene Note. | ||
| + | - Führen Sie das Programm aus. Es darf zu keinem Programmabbruch mehr kommen. | ||
| + | |||
| + | === Dauer === | ||
| + | 45 Minuten | ||
| + | |||
| + | ===Abgabe=== | ||
| + | auf github-classroom | ||
| + | |||
| + | ---- | ||
| + | {{tag> | ||
| + | [[https:// | ||