Syntaks:
Syntaksen til Try-Catch-Finalt Blokk er gitt nedenfor.
prøvHer, hvis et unntak oppstår i prøveblokken, vil unntaket bli kastet til fangstblokken, og den endelig blokkeringen er valgfritt her. Koden til den endelig blokkeringen utføres om et unntak inntreffer eller ikke.
Eksempel-1: Unntakshåndtering med en enkelt fangstblokk
Følgende eksempel viser bruk av unntakshåndtering ved hjelp av en enkelt fangstblokk. Et filnavn vil bli tatt som input og opprette et objekt av BufferedReader for å åpne en fil for lesing. Hvis filnavnet eksisterer, vil innholdet i filen bli lest linje for linje og skrevet ut. Hvis filen ikke eksisterer, vil et unntak bli generert, og en feilmelding vil bli skrevet ut.
Importer Java.io.BufferedReader;Produksjon:
I følgende utgang, 'Hallo.tekst' er gitt som filnavnet som ikke eksisterer. Så følgende melding skrives ut.
Neste gang, fil1.tekst er gitt som filnavn som eksisterer, og utgangen viser innholdet i filen.
Eksempel-2: Unntakhåndtering med flere fangstblokk
Hvordan du kan bruke flere fangstblokker for å håndtere flere unntak vises i følgende eksempel. Her er tre fangstblokker erklært. Den første fangstblokken vil fange den aritmetiske feilen når noen ulogisk aritmetisk operasjon er utført. Den andre fangstbokken vil fange opp rekkeviddefeilen til matrisen når en arrayindeksverdi vil bli prøvd å lese som ikke eksisterer. Den tredje fangstblokken vil fange den numeriske verdifeilen når en hvilken som helst karakter eller strengverdi er gitt som en matriseverdi. I koden blir en matrise med fire indekser erklært og initialisert med heltallverdiene som vil bli tatt fra brukeren. Array -verdiene skrives ut ved hjelp av en loop. En divisjonsoperasjon utføres på slutten av prøveblokken.
Importer Java.util.Skanner;Produksjon:
Følgende utgang viser at arrayverdier settes inn og skrives ut riktig, men den tredje fangstblokken utføres fordi 50 er delt med 0, noe som er en feil.
Programmet utføres for andre gang. Når en strengverdi er gitt som en matriseverdi, blir det andre unntaket generert, og uttalelsen til den andre fangstblokken blir utført.
Eksempel-3: Unntakhåndtering med prøvefinansiering
Bruken av endelig blokkering med prøvefangerblokken vises i følgende eksempel. Koden til endelig blokkering utføres hvis et unntak skjer eller ikke. I koden vil en heltallverdi bli tatt fra brukeren. Hvis brukeren gir noen strengverdi, så InputMismatchException
vil generere og skrive ut meldingen fra fangstblokken. Skannerobjekt vil være lukket i endelig blokkerer hvis unntaket genererer eller ikke.
Importer Java.util.Skanner;Produksjon:
78 er gitt som inngangsverdi i følgende utgang etter utførelse av koden. Så intet unntak genereres her. Meldingen fra den endelig blokken skrives ut senere.
NESTE, Hallo gis som input etter å ha utført koden som er en streng. Så unntaket genereres, og feilmeldingen fra fangstblokken skrives ut. Meldingen fra den endelig blokken skrives ut senere.
Konklusjon:
Unntakshåndtering er et veldig viktig og nyttig trekk ved ethvert programmeringsspråk som kan brukes til å skjule den virkelige feilmeldingen fra brukeren og gi den menneskelig lesbare feilmeldingen for brukeren å forstå feilen riktig. Denne opplæringen hjelper brukeren å lære forskjellige måter å bruke unntakhåndtering i Java og gjøre koden deres mer passende.