Java was sind Exceptions?

1 Antwort

Es gibt nur 2 Arten von Exceptions in Java also: checked Exceptions und unchecked Exceptions.

Die geprüften Ausnahmen sind bereits während den Kompilieren bekannt. Diese Exceptions leiten alle von der Exceptions Klasse ab.

Wenn du eine Exception werfen möchtest, nervt der Compiler oder auch schon deine IDE, dass die "throws" Anmerkung an der Methode fehlt. Damit gibst du explizit an, dass eine Exception von dem Typ geworfen werden kann.

In Methoden, wo du eine throws Methode aufrufst, musst du diese Exception mit try catch fangen oder mit throws weiter reichen.

Bei ungeprüften Ausnahmen kennt der Compiler diese nicht. Diese sind erst während der Laufzeit bekannt. Unchecked Exceptions erben von der RuntimeException Klasse.

RuntimeExceptions kannst du einfach so werfen. Die Methode muss nicht mit throws markiert werden. Es ist auch kein try catch Block erforderlich. Die throws Anmerkung kann also Dokumentation hinzugefügt werden.

Wenn eine beliege Exception bei der main Methode ankommt und auch dort nicht gefangen wird, stürzt das Programm ab und beendet sich. Bei geprüften Exceptions muss an der main Methode ein "throws Exception" hinzugefügt werden, da sonst der Compiler nervt.