D:\cs151\chap80>java Quadrat Eine Zahl eingeben: Rats Exception in thread "main" java.lang.NumberFormatException: Unsinn at java.lang.Integer.parseInt(Integer.java:409) at java.lang.Integer.parseInt(Integer.java:458) at Quadrat .main(NFException.java:18) D:\cs151\chap80>
Der Anwender hat Unsinn eingeben, was die parseInt
nicht in einen Integer konvertieren konnte.
Nichts ist falsch an dem Programm.
Das Problem ist, dass parseInt
"Unsinn" nicht in einen int
konvertieren konnte.
Wenn parseInt
das Problem findet,
löst es eine NumberFormatException
aus.
Das Java Laufzeitsystem fing die Ausnahme auf,
hielt das Programm an und gab Fehlermeldungen aus.
Eine Ausnahme (Exception) ist ein Problem,
dass zur Laufzeit eines Programms auftritt.
Oft wird das Problem durch Umstände,
die außerhalb der Kontrolle des Programms liegen,
verursacht, so wie fehlerhafte Eingabe durch den Anwender.
Wenn eine Ausnahme auftritt,
erzeugt die Java Virtuelle Maschine ein Objekt der Klasse
Exception
,
das Informationen über das Problem enthält.
Ein Java Programm könnte selbst eine Ausnahme
auffangen.
Es kann dann das Exception
-Objekt
verwenden, um sich von diesem Problem zu erholen.
Ein Fehler (Error) ist auch ein Problem,
das zur Laufzeit auftritt.
Ein Fehler wird durch ein Objekt der Klasse Error
repräsentiert.
Aber ein Fehler ist zu schwerwiegend, um von einem Programm
behandelt werden zu können.
Das Programm muss beendet werden.