Eine Ausnahme in Java, auch als Ausnahme bekannt, ist ein Ereignis, das während der Programmausführung auftritt und den normalen Befehlsfluss des ausführenden Programms unterbricht. Um laufende Fehler im Programm zeitnah und effektiv behandeln zu können, müssen Ausnahmeklassen verwendet werden.
Ausnahmeeinführung:
In einem Programm können Fehler aus verschiedenen Situationen auftreten, die der Programmierer nicht erwartet hat oder die außerhalb der Kontrolle des Programmierers liegen B. fehlerhafte Daten des Benutzers, Versuch, eine nicht vorhandene Datei zu öffnen usw. Um laufende Fehler im Programm schnell und effektiv behandeln zu können, hat Java speziell die Ausnahmeklasse eingeführt.
Beispiel:
Um besser zu verstehen, was eine Ausnahme ist, werfen wir einen Blick auf ein sehr einfaches Java-Programm. Der folgende Beispielcode ermöglicht dem Benutzer die Eingabe einer Ganzzahl zwischen 1 und 3 und führt in anderen Fällen zu einem Eingabefehler.
import java.util.Scanner; public class Test01 { public static void main(String[] args) { System.out.println("请输入您的选择:(1~3 之间的整数)"); Scanner input = new Scanner(System.in); int num = input.nextInt(); switch (num) { case 1: System.out.println("one"); break; case 2: System.out.println("two"); break; case 3: System.out.println("three"); break; default: System.out.println("error"); break; } } }
Normalerweise folgt der Benutzer den Systemanweisungen, um eine Zahl zwischen 1 und 3 einzugeben. Wenn der Benutzer jedoch nicht wie erforderlich eingibt, beispielsweise den Buchstaben „a“, tritt beim Ausführen des Programms eine Ausnahme auf und die Ausführungsergebnisse sind wie folgt.
请输入您的选择:(1~3 之间的整数) a Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Unknown Source) at java.util.Scanner.next(Unknown Source) at java.util.Scanner.nextInt(Unknown Source) at java.util.Scanner.nextInt(Unknown Source) at text.text.main(text.java:11)
Ursachen und Nutzungsprinzipien von Ausnahmen
Es gibt drei Hauptgründe, warum eine Ausnahme in Java auftritt:
1. Java-interner Fehler tritt auf, Java-Ausnahmen werden von der virtuellen Maschine generiert Maschine.
2. Ausnahmen, die durch Fehler im geschriebenen Programmcode verursacht werden, wie z. B. Nullzeiger-Ausnahmen, Array-Out-of-Bounds-Ausnahmen usw. Diese Art von Ausnahme wird als ungeprüfte Ausnahme bezeichnet und es ist im Allgemeinen erforderlich, diese Ausnahmen in bestimmten Klassen zentral zu behandeln.
3. Ausnahmen, die manuell durch die throw-Anweisung generiert werden. Diese Ausnahme wird als geprüfte Ausnahme bezeichnet und wird im Allgemeinen verwendet, um dem Aufrufer der Methode einige notwendige Informationen mitzuteilen.
Java behandelt Ausnahmen durch einen objektorientierten Ansatz. Wenn während der Ausführung einer Methode eine Ausnahme auftritt, generiert die Methode ein Objekt, das die Ausnahme darstellt, und übergibt es an das Laufzeitsystem. Das Laufzeitsystem sucht nach dem entsprechenden Code zur Behandlung der Ausnahme.
Wir nennen den Prozess des Generierens eines Ausnahmeobjekts und seiner Übermittlung an das Laufzeitsystem das Auslösen einer Ausnahme. Das Laufzeitsystem durchsucht den Aufrufstapel der Methode, bis es ein Objekt findet, das diese Art von Ausnahme verarbeiten kann. Dieser Vorgang wird als Abfangen der Ausnahme bezeichnet.
Java-Ausnahmen zwingen Benutzer dazu, die Robustheit und Sicherheit ihrer Programme zu berücksichtigen. Die Ausnahmebehandlung sollte nicht zur Steuerung des normalen Programmablaufs verwendet werden. Ihre Hauptfunktion besteht darin, Ausnahmen zu erfassen, die während der Ausführung des Programms auftreten, und sie entsprechend zu behandeln. Beim Schreiben von Code zur Behandlung von Ausnahmen, die in einer bestimmten Methode auftreten können, können Sie die folgenden drei Prinzipien befolgen:
1. Verwenden Sie die try-catch-Anweisung in der aktuellen Methodendeklaration, um Ausnahmen abzufangen.
2. Wenn eine Methode überschrieben wird, muss die Methode, die sie überschreibt, dieselbe Ausnahme oder eine Unterklasse der Ausnahme auslösen.
3. Wenn die übergeordnete Klasse mehrere Ausnahmen auslöst, muss die überschreibende Methode eine Teilmenge dieser Ausnahmen auslösen und kann keine neuen Ausnahmen auslösen.
Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.
Das obige ist der detaillierte Inhalt vonWas sind Ausnahmen in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!