[Java] Wirf eine Ausnahme aus

Ausnahmebehandlung ist die Grundlage von Java, aber da es missverstanden wurde, bleibt es als Memorandum.

Probleme, die aufgetreten sind

Ich wollte eine Ausnahme an den Aufrufer der Methode senden. Als ich versuchte, die abgefangene Ausnahme auszulösen, wurde aus irgendeinem Grund ein Kompilierungsfehler angezeigt.

Implementierung

Wenn Sie beispielsweise einen Timeout-Fehler auslösen, ist dies wie folgt.

    public void foo(){
        try {
            fetch();
        } catch (SocketTimeoutException e) {
        }
    }

    public Integer fetch(){
        try {
 //Http通信
        } catch (SocketTimeoutException e) {
 wirf hier e; // Kompilierungsfehler
        }finally {
        }
        return number;
    }

Missverständnis

Neben werfen Es gibt eine Thorws-Klausel, aber ich dachte, sie hat dieselbe Funktion wie die catch-Anweisung. Tatsächlich bedeutete die Methode damit ** eine Methode, die eine Ausnahme auslösen konnte **.

Also habe ich der Methode, die die Ausnahme auslöst, eine Throws-Klausel hinzugefügt, und der Kompilierungsfehler ist verschwunden, und ich konnte ihn mit foo () abfangen.

Impressionen

Ich hätte nicht gedacht, dass ich über das Fundament des Fundaments stolpern würde, aber ich bin froh, dass ich es jetzt wusste ...

Recommended Posts

[Java] Wirf eine Ausnahme aus
Java-Ausnahmebehandlung?
[Java] Ausnahmeinstanz
[Java] Ausnahmebehandlung
☾ Java / Ausnahmebehandlung
Informationen zur Behandlung von Java-Ausnahmen
Behandlung von Java-Ausnahmen
Fragen in Java-Ausnahmebehandlung werfen und versuchen-fangen
Java Basic Learning Content 7 (Ausnahme)
Über Java-Instanzen
[Java] Praxis der Ausnahmebehandlung [Ausnahme]
[Java] Informationen zur Behandlung von Try-Catch-Ausnahmen
Verwendungsregeln für die Behandlung von Java-Ausnahmen
Java erstellt Excel-Dokumente
Ausnahmebehandlungstechniken in Java
Es tritt keine Ausnahme auf, wenn Java double durch Null geteilt wird
Erstellen Sie mit JAVA eine unveränderliche Klasse
Ich habe eine E-Mail in Java gesendet
Java-Lernnotiz (Erstellen eines Arrays)
Ausnahme
[Java] Deklarieren und initialisieren Sie ein Array
Versuchen Sie einen If-Ausdruck in Java
Java
Unerwartete Ausnahme bei Verwendung von DateTimeFormatter in Java
[Java] Was ist die Ausnahme für gleichzeitige Änderungen?
Ich habe eine Anmerkung in Java gemacht.
So formatieren Sie Enum mit dem Formatierer-Maven-Plugin (Java)
[Einführung in Java] Informationen zur Ausnahmebehandlung (try-catch-finally, aktivierte Ausnahme, nicht aktivierte Ausnahme, Würfe, Würfe)
Java
Schrittweises Verständnis der Behandlung von Java-Ausnahmen
[Für Java-Anfänger] Informationen zur Ausnahmebehandlung
Führen Sie in Java8 geschriebene Anwendungen in Java6 aus
[Java] Ausnahmetypen und grundlegende Verarbeitung
Führen Sie einen externen Prozess in Java aus
[Java] Erstellen Sie mit Gradle ein ausführbares Modul
Map ohne Verwendung eines Arrays in Java
[Java] Senden Sie eine E-Mail mit Amazon SES
Vergleichen Sie Elemente eines Arrays (Java)
Java (Ausnahmebehandlung, Threading, Sammlung, Datei-E / A)
Java-Ausnahme StackTrace wird im Neuzustand ermittelt
try-catch-finally Ausnahmebehandlung Verwendung von Java