Unntakhåndtering i Java | Forklart

Unntakhåndtering i Java | Forklart
Java gir et konsept av Avvikshåndtering Det gjør det mulig å håndtere feilene ved kjøretid, på denne måten ville ikke den normale følgens følging bli påvirket. For å håndtere runtime-unntakene gir Java flere måter som prøvefangst, til slutt, kast, kaster. Den normale strømmen kan bevares ved hjelp av noen av disse unntakshåndteringsmetodene.

Denne oppskrivningen presenterer en dyp forståelse av følgende aspekter ved unntakshåndtering:

  • Hva er unntak i Java?
  • Hva er unntakshåndtering i Java
  • Hvordan håndtere unntak i Java

Så la oss komme i gang!

Hva er unntak i Java

En uventet hendelse som forstyrrer strømmen av programmet blir referert til som et unntak, og for å gjøre et programkjøring vellykket, må vi håndtere slike unntak.

Hva er unntakshåndtering i Java

Det er en prosess med å håndtere feilene ved kjøretid for eksempel IOException, ClassNotfoundException, Sqexception, etc. Unntakshåndtering hjelper oss med å unngå forstyrrelse av den normale/vanlige strømmen av et program.

Hvordan håndtere unntak i Java

I Java kan unntak håndteres på flere måter som, vi kan bruke prøvefanget, kaste, kaste og til slutt uttalelser.

Try-fangst

En av de mest brukte måtene å håndtere unntakene på er Try-fangst uttalelser som brukes som et par. Koden erklært i prøveblokken vil bli sjekket for unntak/feil, og hvis unntaket oppstår, vil den bli fanget i fangstblokken.

Syntaksen til prøvekampanlegget vises i utdraget nedenfor:

prøve

// kode som skal sjekkes for unntak

å fange

// kode for å håndtere unntak

Try -blokken blir fulgt av en eller flere fangstblokker.

Eksempel

I dette eksemplet opprettet vi, initialiserte en variabel “Num = 50” Og en rekke heltall, neste gang benyttet vi en "for loop" for å iterere gjennom hver indeks av matrisen.

publicClassexceptionHandlingExample
publicStaticVoidmain (String [] args)
int num = 50;
int [] arr = 5, 10, 0, 25, 5;
for (inti = 0; iprøv
System.ute.println ("Resultat:" + num / arr [i]);
fangst (unntak eks)
System.ute.println ("et unntak forekommer");



Deretter skriver vi et stykke kode i forsøksblokken som vil bli testet hvis et unntak inntreffer, så blir det håndtert i fangstblokken:

Fra ovennevnte utdrag observerer vi at når en feil oppstår, viser programmet på det tidspunktet en melding “Et unntak skjer” Og etterpå itererer sløyfen gjennom de gjenværende oppføringene i matrisen I.e. Den normale strømmen av programmet forstyrret ikke.

til slutt uttalelse

En annen praktisk måte å håndtere unntak på er bruk av endelig Nøkkelord som kan brukes med prøvekampanlegget.

Det er en god praksis å skrive de viktige uttalelsene/koden (som du vil utføre i enhver situasjon) innenfor endelig blokkering fordi den alltid vil utføre uavhengig av konsekvensene av prøvefangsblokken I.e. om unntakene håndteres eller ikke.

Eksempel

Kodebiten nedenfor lar deg forstå hvordan du bruker det endelig nøkkelordet i Java:

publicClassexceptionHandlingExample
publicStaticVoidmain (String [] args)
prøve
int nummer1 = 12;
int nummer2 = 0;
System.ute.println (nummer1/nummer2);

fang
System.ute.println ("unntak skjedde");

endelig

System.ute.Println ("Endelig blokkerer");


La oss se på utdraget nedenfor for å observere hvordan søkeordet endelig fungerer:

Fra figuren ovenfor observerte vi at den endelig blokkeringen utfører vellykket uavhengig av prøvefangstblokkene.

Kast nøkkelord

I Java kan unntak håndteres eksplisitt ved hjelp av kaste. Kastnøkkelordet hjelper oss med å lage et tilpasset unntak, dessuten kan det brukes med alle typer unntak som for eksempel ArrayIndexoutofBoundSexception, Aritmeticexception, og så videre.

Eksempel

I dette eksemplet vil vi ta en verdi på tidspunktet for en funksjonsanrop, hvis inngangsverdien er lik 0, vil vi kaste en tilpasset aritmetisk unntak.

publicClassThrowExample
publicVoidDivide (int input)
int -nummer = 100;
if (input == 0)
kastetwarithmeticexception ("\ n du skriver inn 0, kan ikke utføre divisjon");
annet
System.ute.println ("Resultat:" + tall / input);


publicStaticVoidmain (String [] args)
throwExample obj = newThrowExample ();
obj.dele (0);

Det komplette kodebiten sammen med utdataene er gitt i følgende utdrag:

Ovennevnte kodebit viser at passering “0” Som inngang resulterer i tilpassede unntak som autentiserer arbeidet med kaste nøkkelord.

Konklusjon

Unntakshåndtering er en prosess som håndterer feilene/unntakene ved kjøretid. I Java kan unntak/feil håndteres ved hjelp av prøvefangst, kaste og til slutt nøkkelord/uttalelser. De Try-fangst Uttalelser brukes som et par, mens de endelig også kan brukes med Try-setningen eller med Try-Catch-setningen. Try -setningen brukes til å teste koden for unntak/feil, fangstblokken brukes til å fange unntakene endelig Blokk kjører alltid koden uavhengig av konsekvenser mens ved å bruke kaste nøkkelord Et unntak kan kastes eksplisitt.