V tomto tutoriálu se dozvíme o výjimkách v Javě. Pokryjeme chyby, výjimky a různé typy výjimek v Javě.
Výjimkou je neočekávaná událost, ke které dojde během provádění programu. Ovlivňuje tok pokynů programu, což může způsobit neobvyklé ukončení programu.
Výjimka může nastat z mnoha důvodů. Někteří z nich jsou:
- Neplatný vstup uživatele
- Selhání zařízení
- Ztráta síťového připojení
- Fyzická omezení (nedostatek paměti disku)
- Chyby kódu
- Otevírá se nedostupný soubor
Hierarchie výjimek Java
Zde je zjednodušený diagram hierarchie výjimek v Javě.
Jak můžete vidět z výše uvedeného obrázku, Throwable
třída je kořenovou třídou v hierarchii.
Všimněte si, že hierarchie se dělí na dvě větve: Chyba a Výjimka.
Chyby
Chyby představují nenapravitelné podmínky, jako je nedostatek paměti pro virtuální stroj Java (JVM), úniky paměti, chyby přetečení zásobníku, nekompatibilita knihovny, nekonečná rekurze atd.
Chyby jsou obvykle mimo kontrolu programátoru a neměli bychom se snažit s chybami zacházet.
Výjimky
Program může zachytit a zpracovat výjimky .
Když dojde k výjimce v rámci metody, vytvoří objekt. Tento objekt se nazývá objekt výjimky.
Obsahuje informace o výjimce, jako je název a popis výjimky a stav programu, kdy k výjimce došlo.
V následujícím kurzu se naučíme, jak tyto výjimky zpracovat. V tomto kurzu se nyní zaměříme na různé typy výjimek v Javě.
Typy výjimek Java
Hierarchie výjimek má také dvě větve: RuntimeException
a IOException
.
1. RuntimeException
Runtime výjimka stane kvůli programovací chyby. Jsou také známé jako nezaškrtnuté výjimky .
Tyto výjimky nejsou kontrolovány v době kompilace, ale za běhu. Mezi běžné běhové výjimky patří:
- Nesprávné použití API -
IllegalArgumentException
- Přístup s nulovým ukazatelem (chybí inicializace proměnné) -
NullPointerException
- Přístup k poli mimo rozsah -
ArrayIndexOutOfBoundsException
- Dělení čísla 0 -
ArithmeticException
Můžete o tom přemýšlet tímto způsobem. "Je-li to runtime výjimka, je to tvoje chyba."
K tomu NullPointerException
by nedošlo, kdybyste před použitím zkontrolovali, zda byla proměnná inicializována nebo ne.
ArrayIndexOutOfBoundsException
By nebylo došlo, pokud jste testovali index pole proti pole mezích.
2. Výjimka IO
An IOException
je také známý jako kontrolovaná výjimka . Jsou zkontrolovány kompilátorem v době kompilace a programátor je vyzván ke zpracování těchto výjimek.
Některé z příkladů kontrolovaných výjimek jsou:
- Výsledkem pokusu o otevření souboru, který neexistuje
FileNotFoundException
- Pokouším se číst za konec souboru
Teď víme o výjimkách, o manipulaci s výjimkami se dozvíme v dalším kurzu.