Java-undtagelser

I denne vejledning lærer vi om undtagelser i Java. Vi vil dække fejl, undtagelser og forskellige typer undtagelser i Java.

En undtagelse er en uventet begivenhed, der opstår under programudførelse. Det påvirker strømmen af ​​programinstruktionerne, som kan få programmet til at ophøre unormalt.

En undtagelse kan forekomme af mange grunde. Nogle af dem er:

  • Ugyldig brugerinput
  • Enhedsfejl
  • Tab af netværksforbindelse
  • Fysiske begrænsninger (ud af diskhukommelse)
  • Kodefejl
  • Åbning af en utilgængelig fil

Java-undtagelseshierarki

Her er et forenklet diagram over undtagelseshierarkiet i Java.

Som du kan se på billedet ovenfor, er Throwableklassen rodklassen i hierarkiet.

Bemærk, at hierarkiet opdeles i to grene: Fejl og undtagelse.

Fejl

Fejl repræsenterer uoprettelige forhold såsom Java virtual machine (JVM), der løber tør for hukommelse, hukommelseslækage, stackoverløbsfejl, biblioteks inkompatibilitet, uendelig rekursion osv.

Fejl er normalt uden for programmørens kontrol, og vi bør ikke prøve at håndtere fejl.

Undtagelser

Undtagelser kan fanges og håndteres af programmet.

Når en undtagelse forekommer inden for en metode, opretter den et objekt. Dette objekt kaldes undtagelsesobjektet.

Den indeholder oplysninger om undtagelsen, såsom navnet og beskrivelsen af ​​undtagelsen og programmets tilstand, da undtagelsen opstod.

Vi lærer at håndtere disse undtagelser i den næste vejledning. I denne vejledning vil vi nu fokusere på forskellige typer undtagelser i Java.

Java-undtagelsestyper

Undtagelseshierarkiet har også to grene: RuntimeExceptionog IOException.

1. RuntimeException

En runtime-undtagelse sker på grund af en programmeringsfejl. De er også kendt som ukontrollerede undtagelser .

Disse undtagelser kontrolleres ikke ved kompileringstid, men kørselstid. Nogle af de almindelige undtagelser for runtime er:

  • Forkert brug af en API - IllegalArgumentException
  • Null pointeradgang (mangler initialisering af en variabel) - NullPointerException
  • Adgang uden for grænserne til array - ArrayIndexOutOfBoundsException
  • Dele et tal med 0 - ArithmeticException

Du kan tænke over det på denne måde. “Hvis det er en runtime-undtagelse, er det din skyld”.

Det NullPointerExceptionville ikke være sket, hvis du havde kontrolleret, om variablen blev initialiseret eller ikke, før du brugte den.

En ArrayIndexOutOfBoundsExceptionville ikke have fundet sted, hvis du testede arrayindekset mod arraygrænserne.

2. IOException

En IOExceptioner også kendt som en kontrolleret undtagelse . De kontrolleres af compileren på kompileringstidspunktet, og programmøren bliver bedt om at håndtere disse undtagelser.

Nogle af eksemplerne på kontrollerede undtagelser er:

  • Forsøg på at åbne en fil, der ikke findes, resulterer i FileNotFoundException
  • Forsøger at læse forbi slutningen af ​​en fil

Nu ved vi om undtagelser, vi lærer om håndtering af undtagelser i den næste vejledning.

Interessante artikler...