Warum gibt es schlechte Anzahl Ausnahmen in Java?

April 16

Warum gibt es schlechte Anzahl Ausnahmen in Java?

Ausnahmen können Java-Programme zum Absturz führen, aber richtig eingesetzt, können sie auch Programmierer Anwendungen erstellen, die unerwartete Ereignisse zu verkraften. Anzahl Ausnahmen treten häufig auf, wenn Programme versuchen, die Zahlen, Text-Strings in numerische Werte konvertieren zu analysieren. Wenn ein Java-Programm eine Methode verwendet, in der eine Zahl nicht den erwarteten Typ ist, kann es eine Anzahl Format-Ausnahme auslösen. Durch Verständnis Ausnahmen können Sie lernen, Programme zu erstellen, die zuverlässige Funktionalität bereitstellen.

Ausnahmetypen

Java-Programme können viele verschiedene Arten von Ausnahme auslösen. Die Zahl Format Ausnahme ist die häufigste numerische Ausnahme. Eine Laufzeitausnahme, erweitert es die illegalen Argument Exception-Klasse. Normalerweise entsteht diese Ausnahme, wenn Sie eine Methode verwenden, um zu versuchen, eine Zeichenfolge als Zahl zu analysieren, aber der Inhalt der Zeichenfolge keine Anzahl von den richtigen Typ ist. Da es ausnahmsweise nicht aktiviert ist, können Ihre Programme ohne Ihre integrierte Entwicklungsumgebung mit der Warnung über den möglichen Fehler kompilieren. Die Zahl Format-Ausnahme tritt nur auf, wenn ein Programm unzulässige Eingabe an eine Methode, übergibt so dass Sie es nur entdecken können, wenn die Anwendung ausgeführt wird.

Ursachen

Die Java-Sprache-Wrapper-Klassen bieten Objektdarstellungen von den primitiven Anzahl Typen, einschließlich Integer, Float und Double. Mit diesen Klassen können Programme Zeichenfolgenwerte als numerische Typen wie folgt analysieren:

Integer.parseInt("3");

Dieser Code führt ohne Fehler, da der übergebene String-Parameter einen Zahlenwert enthält. Der folgende Methodenaufruf bewirkt jedoch, dass Java eine Anzahl Format-Ausnahme auslösen, da die Zeichenfolge keine Zahl enthält:

Integer.parseInt("r");

Der folgende Code führt auch die Ausnahme, da obwohl die Zeichenfolge eine Zahl ist, es keine ganze Zahl ist:

Integer.parseInt("3.5");

Alle diese Code-Auszüge kompilieren und ausführen, so dass der Programmierer nur den Fehler zur Laufzeit bekannt werden kann. Die Werte sind normalerweise nicht explizit angegeben, aber aus einer externen Quelle oder Variablenwert gelesen.

Fang

Sie können Anzahl Format Ausnahmen abfangen, wenn sie werfen Ihre Programme dürften. Ihre Anzahl Analysecode einen Try-Block hinzugefügt und anschließend einen schwarzen Haken dahinter liefern, können Sie Programme erstellen, die weiterhin funktionieren, selbst wenn eine Zahl Format Exception entsteht. Der folgende Beispielcode veranschaulicht diese Struktur:

versuchen Sie {}Integer.parseInt(numString);}Catch(NumberFormatException numExc) {System.out.println(numExc.getMessage());}

Die Zeichenfolge analysieren wird in diesem Fall als eine Variablenreferenz dargestellt, so dass sein Inhalt unbekannt ist. Wenn der Zeichenfolgeninhalt als Integer nicht analysiert werden kann, springt der Code sofort zum Catch-Block, wo Sie alternative Verarbeitung zu ermöglichen.

Werfen

Sowie das Abfangen von Ausnahmen, können Entwickler Java-Programme erstellen, in denen sie benutzerdefinierte Ausnahmen auslösen. Dies ist eine gemeinsame Taktik mit ungeprüften Ausnahmen wie Zahlenformat. Der folgende geänderte Code veranschaulicht:

fangen (NumberFormatException NumExc) {werfen neue BadNumberException();}

Dies ermöglicht Programmierern, eigene benutzerdefinierte Exception-Klasse zu definieren, die ein aufgegebenes Typ sein kann, und eine geeignete Bewältigungsstrategien für die Anwendung bereitzustellen.