Auf Java Ausnahme ist ein unerwünschtes oder unerwartetes Ereignis, das während der Ausführung des Programms auftritt. Wenn eine Ausnahme auftritt, wird die Ausführung des Programms beendet. Um diese Abbruchbedingungen zu vermeiden, können wir den Try-Catch-Block in Java verwenden. In diesem Artikel erfahren Sie mehr über Try, Catch, Throw und Throws in Java.
Warum tritt eine Ausnahme auf?
Eine Ausnahme kann aus verschiedenen Gründen auftreten, z. B. einem Problem mit der Netzwerkverbindung, fehlerhaften Eingaben eines Benutzers, dem Öffnen einer nicht vorhandenen Datei in Ihrem Programm usw
Blöcke und Schlüsselwörter, die für die Ausnahmebehandlung verwendet werden
1. Versuchen Sie es in Java
Der versuchen Block enthält eine Reihe von Anweisungen, bei denen eine Ausnahme auftreten kann.
try { // statement(s) that might cause exception }>
2. Fang in Java
Der Catch-Block wird verwendet, um die unsichere Bedingung eines Try-Blocks zu verarbeiten. Auf einen Try-Block folgt immer ein Catch-Block, der die Ausnahme behandelt, die im zugehörigen Try-Block auftritt.
catch { // statement(s) that handle an exception // examples, closing a connection, closing // file, exiting the process after writing // details to a log file. }>
3. Wirf Java ein
Das Schlüsselwort throw wird verwendet, um die Kontrolle vom Try-Block an den Catch-Block zu übertragen.
Nachfolgend finden Sie die Umsetzung des oben genannten Ansatzes:
Java
// Java program that demonstrates the use of throw> class> ThrowExcep {> > static> void> help()> > {> > try> {> > throw> new> NullPointerException(> 'error_unknown'> );> > }> > catch> (NullPointerException e) {> > System.out.println(> 'Caught inside help().'> );> > // rethrowing the exception> > throw> e;> > }> > }> > public> static> void> main(String args[])> > {> > try> {> > help();> > }> > catch> (NullPointerException e) {> > System.out.println(> > 'Caught in main error name given below:'> );> > System.out.println(e);> > }> > }> }> |
Java hat als nächstes
>
>Ausgabe
Caught inside help(). Caught in main error name given below: java.lang.NullPointerException: error_unknown>
4. wirft Java ein
Der wirft Das Schlüsselwort wird für die Ausnahmebehandlung ohne Try & Catch-Block verwendet. Es gibt die Ausnahmen an, die eine Methode an den Aufrufer werfen kann, und behandelt sich nicht selbst.
Nachfolgend finden Sie die Umsetzung des oben genannten Ansatzes:
Java
// Java program to demonstrate working of throws> class> ThrowsExecp {> > // This method throws an exception> > // to be handled> > // by caller or caller> > // of caller and so on.> > static> void> fun()> throws> IllegalAccessException> > {> > System.out.println('Inside fun(). ');> > throw> new> IllegalAccessException('demo');> > }> > // This is a caller function> > public> static> void> main(String args[])> > {> > try> {> > fun();> > }> > catch> (IllegalAccessException e) {> > System.out.println('caught in main.');> > }> > }> }> |
Starten Sie MySQL Ubuntu neu
>
>Ausgabe
Inside fun(). caught in main.>
5. endlich in Java
Es wird nach dem Catch-Block ausgeführt. Wir verwenden es, um allgemeinen Code einzufügen (der unabhängig davon ausgeführt wird, ob eine Ausnahme aufgetreten ist oder nicht), wenn mehrere Catch-Blöcke vorhanden sind.
Nachfolgend finden Sie ein Beispiel für eine vom System generierte Ausnahme:
Exception in thread 'main' java.lang.ArithmeticException : divide by zero at ExceptionDemo.main(ExceptionDemo.java:5) ExceptionDemo: The class name main:The method name ExceptionDemo.java:The file name java:5:line number>
Nachfolgend finden Sie die Umsetzung des oben genannten Ansatzes:
Java
Knn-Algorithmus
// Java program to demonstrate working of try,> // catch and finally> class> Division {> > public> static> void> main(String[] args)> > {> > int> a => 10> , b => 5> , c => 5> , result;> > try> {> > result = a / (b - c);> > System.out.println('result' + result);> > }> > catch> (ArithmeticException e) {> > System.out.println('Exception caught:Division by zero');> > }> > finally> {> > System.out.println('I am in> final> block');> > }> > }> }> |
>
>Ausgabe
Exception caught:Division by zero I am in final block>
FAQs zum Try-Block in Java
1. Wann sollten Sie Try-Catch-Blöcke verwenden?
Try-Catch-Blöcke werden verwendet, um Ausnahmen zu vermeiden, damit der Code nicht vor der vollständigen Ausführung abstürzt.
2. Was ist Throw und Throws in Java?
Der Wurf dient dazu, die Kontrolle vom Try-Block auf den Catch-Block zu übertragen. Während throws für die Ausnahmebehandlung ohne Try & Catch-Block verwendet wird. Throws geben die Ausnahmen an, die eine Methode an den Aufrufer werfen kann und die sie nicht selbst behandelt.
3. Können wir zwei Catch-Blöcke haben?
Ja, wir können mehrere Catch-Blöcke mit Try-Anweisungen haben.