Eine Java -Ausnahme ist ein Objekt, das eine Ausnahme (dh ein Fehler) beschreibt, die in einem Codesegment auftritt. Wenn eine Ausnahme auftritt, wird ein Objekt, das die Ausnahme darstellt, erstellt und in die Methode geworfen, die den Fehler verursacht. Diese Methode kann die Ausnahme selbst behandeln oder sie bestehen. In beiden Fällen wird die Ausnahme gefangen und verarbeitet. Die Ausnahme kann vom Java -Laufzeitsystem oder durch Ihren manuellen Code generiert werden. Die von Java ausgelöste Ausnahme bezieht sich auf grundlegende Fehler, die gegen Sprachspezifikationen verstoßen oder die Einschränkungen der Java -Ausführungsumgebung überschreiten. Die durch manuellen Codierung generierten Ausnahmen werden im Grunde genommen verwendet, um Fehlerbedingungen im Methode Caller zu melden.
Die Handhabung von Java -Ausnahmen wird von 5 Schlüsselwörtern gesteuert: Versuchen Sie, fangen, werfen, wirft und schließlich. So funktionieren sie. Das Programm erklärt, dass die gewünschte Ausnahmeüberwachung in einem Try -Block enthalten ist. Wenn eine Ausnahme im Try -Block auftritt, wird sie geworfen. Ihr Code kann diese Ausnahme (mit Fang) aufnehmen und auf eine angemessene Weise umgehen. Die vom System generierte Ausnahme wird automatisch vom Java -Laufzeitsystem ausgelöst. Verwenden Sie manuell eine Ausnahme mit dem Schlüsselwortwurf. Jede Ausnahme von der geworfenen Methode muss durch die Throw -Klausel definiert werden. Jeder Code, der absolut ausgeführt wird, bevor die Methode zurückgegeben wird, wird im endgültigen Block platziert.
Hier ist die übliche Form eines Ausnahmebehandlungs:
Versuchen Sie {// Code -Block, um Fehler auf Fehler zu überwachen} catch (ExceptionType1 exoB) {// Ausnahmebehandler für Ausnahme- Code, der vor dem Versuch ausgeführt wird, Block endet}
Hier ist ExecTeType der Typ, bei dem die Ausnahme aufgetreten ist.
Alle Ausnahmetypen sind Unterklassen der integrierten Klasse Throwable. Daher befindet sich Throwable auf der obersten Ebene der Ausnahmeklassenhierarchie. Unmittelbar nach Throwable sind zwei Unterklassen, die die Ausnahme in zwei verschiedene Zweige teilen. Ein Zweig ist eine Ausnahme.
Diese Klasse wird für Ausnahmen verwendet, die vom Benutzerprogramm gefangen werden können. Es ist auch eine Klasse, mit der Sie Ihre eigene Unterklasse für Benutzer -Ausnahmestyp erstellen können. In der Ausnahmezweig gibt es eine wichtige RunTimeException -Unterklasse. Diese Art von Ausnahme wird automatisch für das von Ihnen geschriebene Programm definiert und enthält Fehler wie die Dividierung durch Null und illegale Array -Indexierung.
Eine andere Art von Zweig ist mit dem Fehler auf höchstem Niveau, der Ausnahmen definiert, die nicht von Programmen in normalen Umgebungen gefangen werden sollen. Eine Ausnahme des Typ -Fehlers wird im Java -Laufzeitsystem verwendet, um Fehler im Zusammenhang mit dem Laufzeitsystem selbst anzuzeigen. Der Stapelüberlauf ist ein Beispiel für diesen Fehler. In diesem Kapitel werden die Ausnahmeregelung für Fehlertypen nicht erörtert, da es häufig katastrophale und tödliche Fehler sind, die Ihr Programm nicht kontrollieren kann.