Java >> Java tutorial >  >> Tag >> Try Catch

prøv at fange Java Block | Eksempel på håndtering af undtagelser

Try and Catch er blokke i Java-programmering. Det bruges til undtagelseshåndtering i Java. Hvor try-blok indeholder et sæt sætninger, hvor en undtagelse kan forekomme, og catch-blok er det sted, hvor du håndterer undtagelserne.

En try-blok efterfølges altid af en catch-blok, som håndterer den undtagelse, der opstår i den tilhørende try-blok.

Bemærk: Try-catch-blokken skal bruges i metoden. try og catch søgeord kommer i par:

prøv at fange Java-eksempel

Se først eksempelkoden på, hvad der er problemet uden undtagelseshåndtering:-

Problem

public class TryCatchBlock {

    public static void main(String[] args) {

        int data = 10 / 0; // can't divide by zero

        System.out.println("rest of the code");

    }
}

Som du ved, kan du ikke dividere med nul, så programmet skulle give en fejl. Det er kun et tilfælde, der er en masse undtagelser i Java.

Output:

Løsning:Brug af try-catch-blok

Som ovenstående kode, hvis der kommer en fejl, vil din næste linje udføres. Men brug af en prøv-og-fang-blok vil løse dette problem.

public class TryCatchBlock {

    public static void main(String[] args) {

        try {
            int data = 10/0; //exception
        }
        //handling the exception
        catch (ArithmeticException e) {
            System.out.println(e);
        }
        System.out.println("Code after error");
    }

}

Output:

Java try-catch flere undtagelser

Du kan fange flere undtagelser i en række fangstblokke. Lad os se et enkelt eksempel på brug af flere catch-blokke.

public class TryCatchBlock {

    public static void main(String[] args) {

        try {
            int a[] = new int[10];
            a[11] = 30;
        } catch (ArithmeticException e) {
            System.out.println("Arithmetic Exception");
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("ArrayIndexOutOfBounds Exception ");
        } catch (Exception e) {
            System.out.println("Parent Exception");
        }
        System.out.println("Remain codes");
    }
}

Output:

ArrayIndexOutOfBounds undtagelse
Forbliv koder

Sp:Kan vi bruge flere forsøgsblokke i undtagelseshåndtering?

Svar :Nej, du kan ikke bruge flere forsøgsblokke med en enkelt catch-blok. Hver prøveblok skal efterfølges af catch eller endelig. Alligevel, hvis du bruger flere prøveblokke, genereres der en kompileringsfejl.

Se billedet nedenfor, selve IDE viser en fejl:-

Output:

Error:(5, 9) java: 'try' without 'catch', 'finally' or resource declarations

Skriv en kommentar, hvis du er i tvivl om og forslag til denne øvelse.

Bemærk: Dette eksempel (projekt) er udviklet i IntelliJ IDEA 2018.2.6 (Community Edition)
JRE:11.0.1
JVM:OpenJDK 64-Bit Server VM af JetBrains s.r.o
macOS 10.14.1
Java version 11
Alle Java try catch Java Eksempel-koder er i Java 11, så det kan ændre sig på anderledes end Java 9 eller 10 eller opgraderede versioner.


No
Java tag