• "Studienservice.de, eine Seite von und für Fernstudenten der FernUni Hagen, ersetzt den Smalltalk in der Mensa" Handelsblatt Karriere

Ausnahmen Exceptions

Unser Sponsor SAP 4 Students
Ausnahmen, Exceptions

Hallo zusammen,

ich schaue mir gerade noch mal das Zusatzmaterial zu den Exceptions an hab es an sich verstanden alles, dacht ich.

Nur leider steh ich bei Seite 2 etwas auf dem Schlauch, was die Ausgabe des Quelltextes oben betrifft... Laut BlueJ erscheint folgendes:

MyException: Something strange happend
MyException: Something went wrong
Something strange happend
Something went wrong

Die letzten beiden versteh ich ja, aber wie kommen die ersten beiden Ausgaben zustande?

Und noch eine kleine andere Frage zu diesem Thema: Hab ich das richtig verstanden, dass, wenn im finally-Block ein return oder eine throw-Anweisung steht, dass alle anderen vorher aufgetretenen Ausnahmen und returns ignoriert werden?!? Das Beispiel ist mir etwas unklar irgendwie 😕 (Seite 5 unten)

Schöne Grüße,
ela
 
die Ausgaben der ersten beiden Zeilen kommen durch die folgenden Zeilen zustande:

System.out.println(e);
System.out.println(e2);

Auch wenn du es nicht so geschrieben hast, nehme ich mal an, dass es dich verwundert, dass da vorne dran MyException steht. Der Unterschied zwischen e und e.getMessage() ist der, dass bei ersterem das komplette Objekt inklusive Nachricht abgefragt wird. Beim zweiten Fall wird nur die Nachricht ohne das Objekt abgefragt.

Zu deiner zweiten Frage: Ja, das hast du richtig verstanden. Die Ausnahme "foo-catch" wird nie ausgegeben, da noch ein return -2 im finally-Block folgt.
 
Dr Franke Ghostwriter
Ja, genau das mit dem MyException vorne hatte mich bei der Ausgabe gewundert. Aber danke für die Erklärung! Und das andere habe ich dann ja auch richtig verstanden...

Lg Ela
 
Oben