In diesem Tutorial lernen wir Ausnahmen in Java kennen. Wir werden Fehler, Ausnahmen und verschiedene Arten von Ausnahmen in Java behandeln.
Eine Ausnahme ist ein unerwartetes Ereignis, das während der Programmausführung auftritt. Dies wirkt sich auf den Ablauf der Programmanweisungen aus, was dazu führen kann, dass das Programm abnormal beendet wird.
Eine Ausnahme kann aus vielen Gründen auftreten. Einige von ihnen sind:
- Ungültige Benutzereingabe
- Gerätefehler
- Verlust der Netzwerkverbindung
- Physikalische Einschränkungen (nicht genügend Speicherplatz)
- Codefehler
- Öffnen einer nicht verfügbaren Datei
Java-Ausnahmehierarchie
Hier ist ein vereinfachtes Diagramm der Ausnahmehierarchie in Java.
Wie Sie aus dem obigen Bild sehen können, ist die Throwable
Klasse die Stammklasse in der Hierarchie.
Beachten Sie, dass die Hierarchie in zwei Zweige aufgeteilt ist: Fehler und Ausnahme.
Fehler
Fehler stellen nicht behebbare Zustände dar, wie z. B. Java Virtual Machine (JVM), der nicht genügend Speicher zur Verfügung steht, Speicherlecks, Stapelüberlauffehler, Bibliotheksinkompatibilität, unendliche Rekursion usw.
Fehler liegen normalerweise außerhalb der Kontrolle des Programmierers und wir sollten nicht versuchen, Fehler zu behandeln.
Ausnahmen
Ausnahmen können vom Programm abgefangen und behandelt werden.
Wenn innerhalb einer Methode eine Ausnahme auftritt, wird ein Objekt erstellt. Dieses Objekt wird als Ausnahmeobjekt bezeichnet.
Es enthält Informationen zur Ausnahme, wie z. B. den Namen und die Beschreibung der Ausnahme und den Status des Programms, als die Ausnahme aufgetreten ist.
Im nächsten Tutorial erfahren Sie, wie Sie mit diesen Ausnahmen umgehen. In diesem Tutorial konzentrieren wir uns nun auf verschiedene Arten von Ausnahmen in Java.
Java-Ausnahmetypen
Die Ausnahmehierarchie hat auch zwei Zweige: RuntimeException
und IOException
.
1. RuntimeException
Eine Laufzeitausnahme tritt aufgrund eines Programmierfehlers auf. Sie werden auch als ungeprüfte Ausnahmen bezeichnet .
Diese Ausnahmen werden nicht zur Kompilierungszeit, sondern zur Laufzeit überprüft. Einige der häufigsten Laufzeitausnahmen sind:
- Unsachgemäße Verwendung einer API -
IllegalArgumentException
- Nullzeigerzugriff (ohne Initialisierung einer Variablen) -
NullPointerException
- Array-Zugriff außerhalb der Grenzen -
ArrayIndexOutOfBoundsException
- Teilen einer Zahl durch 0 -
ArithmeticException
Sie können auf diese Weise darüber nachdenken. "Wenn es sich um eine Laufzeitausnahme handelt, ist es Ihre Schuld."
Dies NullPointerException
wäre nicht aufgetreten, wenn Sie vor der Verwendung überprüft hätten, ob die Variable initialisiert wurde oder nicht.
Ein ArrayIndexOutOfBoundsException
wäre nicht aufgetreten, wenn Sie den Array-Index anhand der Array-Grenzen getestet hätten.
2. IOException
Eine IOException
wird auch als aktivierte Ausnahme bezeichnet . Sie werden vom Compiler zur Kompilierungszeit überprüft und der Programmierer wird aufgefordert, diese Ausnahmen zu behandeln.
Einige Beispiele für geprüfte Ausnahmen sind:
- Der Versuch, eine nicht vorhandene Datei zu öffnen, führt zu
FileNotFoundException
- Es wird versucht, über das Ende einer Datei hinaus zu lesen
Jetzt, da wir über Ausnahmen Bescheid wissen, werden wir im nächsten Tutorial mehr über den Umgang mit Ausnahmen erfahren.