Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě

Obsah:

Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě
Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě

Video: Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě

Video: Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě
Video: Checked vs. Unchecked Exceptions in Java Tutorial - What's The Difference? 2024, Listopad
Anonim

Klíčový rozdíl – zaškrtnutá vs. nezaškrtnutá výjimka v Javě

Výjimkou je chyba běhu. Existují dva typy výjimek známé jako kontrolované a nekontrolované výjimky. Když dojde ke kontrolované výjimce, aplikace Java se připojí k externímu zdroji, jako je soubor, zařízení nebo databáze. Tyto výjimky kontroluje kompilátor. Některé příklady kontrolovaných výjimek jsou výjimka IO a výjimka FileNotFound. Když dojde k nekontrolované výjimce, aplikace není připojena k žádnému vnějšímu zdroji. Tyto výjimky kompilátor nekontroluje. Některé příklady nekontrolovaných výjimek jsou aritmetická výjimka a výjimka ArrayOutOfBound. Tento článek popisuje rozdíl mezi kontrolovanou a nekontrolovanou výjimkou v Javě. Klíčový rozdíl mezi kontrolovanou a nekontrolovanou výjimkou v Javě je ten, že kontrolovanou výjimku kontroluje kompilátor, zatímco nekontrolovanou výjimku kompilátor nekontroluje.

Co je zaškrtnutá výjimka v Javě?

Když dojde ke kontrolované výjimce, aplikace Java je připojena k externímu zdroji. Tímto prostředkem může být zařízení, jako je tiskárna. Může to být soubor nebo databáze. Proto jsou tyto výjimky kontrolovány kompilátorem. Výjimka IO je zaškrtnutá výjimka. Vyskytuje se v důsledku chyby v zařízení. Když aplikace přistupuje k souboru, který neexistuje, způsobí výjimku FileNotFound. Aplikace může být připojena k databázi, jako je MySQL, Oracle atd. pro ukládání dat. Pokud by došlo k chybě související s databází, jednalo by se o výjimku SQL. To jsou některé příklady kontrolovaných výjimek. Ve všech těchto případech je aplikace připojena k externímu zdroji. U zaškrtnutých výjimek je povinné výjimku zpracovat. Pokud není zpracována, správný tok programu bude ukončen a soubor třídy nebude vygenerován. Chybu lze ošetřit pomocí bloku try, catch.

Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě
Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě

Obrázek 01: Zpracování zaškrtnutých výjimek

Podle výše uvedeného čte FileReader data ze souboru. Soubor text1.txt v zadaném umístění neexistuje. Kód, který může udělit výjimku, je umístěn uvnitř bloku try. Zpráva, která se má vytisknout, je uvnitř záchytného bloku. Protože neexistuje žádný soubor s názvem text1.txt, způsobí to výjimku FileNotFoundException. Pomocí zpracování výjimek se zpráva vytiskne na obrazovku.

Co jsou nekontrolované výjimky v Javě?

Nezaškrtnuté výjimky kompilátor nekontroluje. Na rozdíl od zaškrtnutých výjimek s nekontrolovanými výjimkami není aplikace Java připojena k vnějšímu prostředku, jako je soubor, databáze nebo zařízení. Některé běžné nekontrolované výjimky jsou Aritmetika, ArrayOutOfBound a NullPointer Exceptions.

int a=10, b=0;

int div=a/b;

System.out.println(div);

To způsobí aritmetickou výjimku kvůli potápění „a“o nulu. Viz níže uvedený kód.

Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Java_Figure 02
Rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Java_Figure 02

Obrázek 02: Zpracování aritmetických výjimek

Podle výše uvedeného programu je proměnná a celočíselná hodnota. Proměnná b je 0. Dělení těchto dvou čísel je dělení nulou. Proto způsobí aritmetickou výjimku. Lze to zvládnout pomocí bloku try-catch. Příkazy, které mohou způsobit výjimku, jsou umístěny uvnitř bloku try. Zpráva, která se má zobrazit, je v bloku catch.

Odkaz na níže uvedenou část kódu.

int array1={1, 2, 3, 4, 5};

System.out.println(pole1[5]);

To způsobí výjimku. Pole1 je pole s 5 prvky. Počáteční index pole je nula. Tisk hodnoty indexu 5th způsobí výjimku, protože je mimo rámec. Maximální index pole1 je 4.

Klíčový rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě
Klíčový rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě

Obrázek 03: Zpracování výjimek ArrayOutOfBound

Podle výše uvedeného programu má pole1 5 prvků. Tisk prvku s indexem 6 způsobí výjimku, protože je mimo vazbu. Maximální index, který lze uložit do pole1, je 5. Chybová zpráva se vytiskne provedením bloku catch.

Jaká je podobnost mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě

Zaškrtnutá i nezaškrtnutá výjimka v Javě jsou typy výjimek v Javě

Jaký je rozdíl mezi zaškrtnutou a nezaškrtnutou výjimkou v Javě?

Checked vs. Unchecked Exception in Java

Zkontrolovaná výjimka je chyba za běhu, kterou kontroluje kompilátor. Nezkontrolovaná výjimka je chyba běhu, kterou kompilátor nezkontroluje.
Výskyt
Když dojde ke kontrolované výjimce, aplikace Java je připojena k externímu zdroji, jako je soubor, zařízení nebo databáze. Když dojde k nekontrolované výjimce, Java aplikace není připojena k vnějšímu zdroji.
Příklady
IOException, FileNotFoundException, SQLException jsou některé příklady kontrolovaných výjimek. Aritmetická výjimka, ArrayOutOfBoundException, NullPointerException jsou některé příklady nekontrolovaných výjimek.

Shrnutí – zaškrtnutá vs. nezaškrtnutá výjimka v Javě

Výjimkou je událost, která přeruší provádění toku programu. Existují dva typy výjimek. Říká se jim kontrolované výjimky a nekontrolované výjimky. Tento článek popisuje rozdíl mezi zaškrtnutou výjimkou a nezaškrtnutou výjimkou. Rozdíl mezi kontrolovanou a nekontrolovanou výjimkou v Javě je ten, že kontrolovanou výjimku kontroluje kompilátor, zatímco nekontrolovanou výjimku kompilátor nekontroluje. Vzhledem k tomu, že výjimky ovlivňují správný tok provádění programu, je dobrou programátorskou praxí je zvládnout.

Doporučuje: