Java-unntak

I denne opplæringen vil vi lære om unntak i Java. Vi vil dekke feil, unntak og forskjellige typer unntak i Java.

Et unntak er en uventet hendelse som oppstår under programgjennomføring. Det påvirker strømmen av programinstruksjonene som kan føre til at programmet avsluttes unormalt.

Et unntak kan forekomme av mange grunner. Noen av dem er:

  • Ugyldig brukerinngang
  • Enhetsfeil
  • Tap av nettverkstilkobling
  • Fysiske begrensninger (tom for diskminne)
  • Kodefeil
  • Åpne en utilgjengelig fil

Java-unntakshierarki

Her er et forenklet diagram over unntakshierarkiet i Java.

Som du kan se fra bildet over, er Throwableklassen rotklassen i hierarkiet.

Merk at hierarkiet deler seg i to grener: Feil og unntak.

Feil

Feil representerer uopprettelige forhold som Java virtual machine (JVM) som går tom for minne, minnelekkasjer, stackoverløpsfeil, bibliotekskompatibilitet, uendelig rekursjon, etc.

Feil er vanligvis utenfor programmererens kontroll, og vi bør ikke prøve å håndtere feil.

Unntak

Unntak kan fanges opp og håndteres av programmet.

Når et unntak forekommer innenfor en metode, skaper det et objekt. Dette objektet kalles unntaksobjektet.

Den inneholder informasjon om unntaket, for eksempel navnet og beskrivelsen av unntaket og tilstanden til programmet da unntaket skjedde.

Vi vil lære å håndtere disse unntakene i neste opplæring. I denne opplæringen vil vi nå fokusere på forskjellige typer unntak i Java.

Java Unntakstyper

Unntakshierarkiet har også to grener: RuntimeExceptionog IOException.

1. RuntimeException

Et runtime-unntak skjer på grunn av en programmeringsfeil. De er også kjent som ukontrollerte unntak .

Disse unntakene blir ikke sjekket ved kompileringstid, men kjøretid. Noen av de vanligste unntakene for kjøretid er:

  • Feil bruk av en API - IllegalArgumentException
  • Null tilgang til pekeren (mangler initialisering av en variabel) - NullPointerException
  • Tilgang utenom grensene - ArrayIndexOutOfBoundsException
  • Dele et tall med 0 - ArithmeticException

Du kan tenke på det på denne måten. “Hvis det er et unntak for kjøretid, er det din feil”.

Det NullPointerExceptionville ikke ha skjedd hvis du hadde sjekket om variabelen ble initialisert eller ikke før du brukte den.

Det ArrayIndexOutOfBoundsExceptionville ikke ha skjedd hvis du testet arrayindeksen mot arraygrensene.

2. IOException

En IOExceptioner også kjent som et avkrysset unntak . De blir sjekket av kompilatoren på kompileringstidspunktet, og programmereren blir bedt om å håndtere disse unntakene.

Noen av eksemplene på avmerkede unntak er:

  • Å prøve å åpne en fil som ikke eksisterer, resulterer i FileNotFoundException
  • Prøver å lese forbi slutten av en fil

Nå vet vi om unntak, og vi lærer om håndtering av unntak i neste opplæring.

Interessante artikler...