Výnimky Java

V tomto tutoriále sa dozvieme o výnimkách v Jave. Pokryjeme chyby, výnimky a rôzne typy výnimiek v Jave.

Výnimkou je neočakávaná udalosť, ku ktorej dôjde počas vykonávania programu. Ovplyvňuje tok pokynov programu, čo môže spôsobiť abnormálne ukončenie programu.

Výnimka môže nastať z mnohých dôvodov. Niektoré z nich sú:

  • Neplatný vstup používateľa
  • Porucha zariadenia
  • Strata sieťového pripojenia
  • Fyzické obmedzenia (nedostatok pamäte disku)
  • Chyby kódu
  • Otvára sa nedostupný súbor

Hierarchia výnimiek Java

Tu je zjednodušený diagram hierarchie výnimiek v Jave.

Ako vidíte na obrázku vyššie, Throwabletrieda je koreňovou triedou v hierarchii.

Všimnite si, že hierarchia sa delí na dve vetvy: Chyba a Výnimka.

Chyby

Chyby predstavujú nedobytné podmienky, ako napríklad nedostatok pamäte Java Virtual Machine (JVM), úniky pamäte, chyby pretečenia zásobníka, nekompatibilita knižnice, nekonečná rekurzia atď.

Chyby sú zvyčajne mimo kontroly programátora a nemali by sme sa snažiť chyby spracovávať.

Výnimky

Program môže zachytiť a vyriešiť výnimky .

Ak v rámci metódy dôjde k výnimke, vytvorí sa objekt. Tento objekt sa nazýva objekt výnimky.

Obsahuje informácie o výnimke, ako je názov a popis výnimky a stav programu, keď sa výnimka vyskytla.

Ako zvládnuť tieto výnimky sa dozvieme v nasledujúcom tutoriále. V tejto príručke sa teraz zameriame na rôzne typy výnimiek v Jave.

Typy výnimiek Java

Hierarchia výnimiek má tiež dve vetvy: RuntimeExceptiona IOException.

1. RuntimeException

Runtime výnimka stane kvôli programovacie chyby. Sú tiež známe ako nekontrolované výnimky .

Tieto výnimky sa nekontrolujú v čase kompilácie, ale v čase spustenia. Niektoré z bežných runtime výnimiek sú:

  • Nesprávne použitie API - IllegalArgumentException
  • Prístup s nulovým ukazovateľom (chýba inicializácia premennej) - NullPointerException
  • Prístup k poli mimo rozsahu - ArrayIndexOutOfBoundsException
  • Rozdelenie čísla na 0 - ArithmeticException

Môžete o tom premýšľať týmto spôsobom. "Ak je to runtime výnimka, je to tvoja chyba."

K tomu NullPointerExceptionby nedošlo, keby ste pred použitím skontrolovali, či bola premenná inicializovaná alebo nie.

ArrayIndexOutOfBoundsExceptionBy nebolo došlo, ak ste testovali index poľa proti poľa medziach.

2. Výnimka IO

An IOExceptionsa tiež nazýva kontrolovaná výnimka . Kontroluje ich kompilátor v čase kompilácie a programátor je vyzvaný, aby tieto výnimky spracoval.

Niektoré z príkladov kontrolovaných výnimiek sú:

  • Výsledkom bude pokus o otvorenie súboru, ktorý neexistuje FileNotFoundException
  • Pokúšam sa prečítať za koniec súboru

Teraz už vieme o výnimkách, o zaobchádzaní s výnimkami sa dozvieme v ďalšom tutoriále.

Zaujímavé články...