Für Anfänger. Der Inhalt befindet sich auf der Ebene "Was ist Ausnahmebehandlung?"
Main.java
public class Main {
public static void main(String[] args) {
int a = 5;
int b = 0;
System.out.println(div(a,b)); //Hier tritt ein Fehler auf
System.out.println("Fertig");
}
static int div(int a, int b) {
return a / b;
}
}
Sie können ohne Kompilierungsfehler kompilieren. Und ausführen.
Ausführungsergebnis
Exception in thread "main" java.lang.ArithmeticException: / by zero
at Main.div(Main.java:19)
at Main.main(Main.java:9)
System.out.println(div(a,b));
In dem Teil
java.lang.ArithmeticException: / by zero
Nach diesem Fehler
System.out.println("Fertig");
Obwohl ein Prozess aufgerufen wird, endet der Prozess an dem Teil, an dem der Fehler in der obigen Zeile auftritt.
Da das Programm zwangsweise beendet wurde, muss der Prozess geschrieben werden ** "Wenn ein Fehler auftritt, tun Sie dies" **. Dies ist die Ausnahmebehandlung.
Es ist ein Fehler. Sie können sich das als Fehler vorstellen. Genau genommen scheint die Denkweise je nach Person unterschiedlich zu sein, daher ist es in Ordnung zu glauben, dass die Ausnahmebehandlung vorerst eine Fehlerbehandlung ist.
Main.java
public static void main(String[] args) {
int a = 5;
int b = 0;
try {
System.out.println(div(a,b));
} catch(Exception e) { //Erhalten Sie den Fehler als Objekt mit dem Namen e (Objektname kann alles sein)
System.out.println("Teilen Sie durch 0!");
System.out.println(e); //Ausgabe e
} finally {
System.out.println("Fertig");
}
}
//Berechnungen, die wahrscheinlich Fehler verursachen. Wenn ein Fehler auftritt, übergeben Sie die Fehlerinformationen an die Ausnahmeklasse.
static int div(int a, int b) throws Exception {
return a / b;
}
}
try{
Verarbeitung, die einen Fehler vorhersagt
} catch (Exception e) {
Was tun, wenn ein Fehler auftritt?
} finally {
Verarbeitung mit oder ohne Fehler
}
Wenn Sie einen Prozess schreiben, in dem ein Fehler vorhergesagt wird, beenden Sie ihn nicht dort. Wenn ein Fehler auftritt, führen Sie den Prozess aus, wenn ein Teilfangfehler auftritt. Damit bewegt sich der Prozess bis zum Ende, ohne anzuhalten.
Wenn ich es tatsächlich laufen lasse
Teilen Sie durch 0!//Was tun, wenn ein Fehler auftritt?
java.lang.ArithmeticException: / by zero //Fehlermeldung
Fertig//Laufen bis endlich
Recommended Posts