Definice a význam Exception

Co je Exception?

Výjimka (zkratka pro „výjimečnou událost“) je chyba nebo neočekávaná událost, která nastane během běhu programu. Když nastane výjimka, přeruší tok programu. Pokud program výjimku zvládne a zpracuje, může pokračovat v běhu. Pokud výjimku nelze zpracovat, může být program nucen skončit.

Více programovacích jazyků podporuje výjimky, i když se používají různými způsoby. Například výjimky jsou nedílnou součástí jazyka Java a často slouží k řízení toku programu. Java obsahuje třídu Exception Exception, která má desítky podtříd, například TimeoutException, UserException a IOException. Podtřídy jako IOException obsahují specifičtější výjimky jako FileNotFoundException a CharacterCodingException, které mohou být „vyhozeny“, pokud není nalezen soubor nebo není rozpoznáno znakové kódování řetězce.

Jiné jazyky používají výjimky pouze k zachycení základních chyb runtime, jako je například neúspěšná alokace paměti nebo chyby na úrovni systému. Například program C++může vyhodit výjimku bad_alloc, když nelze alokovat paměť, a výjimku system_error, když operační systém vyprodukuje chybu.

Obsluha výjimek

Dobře napsaný počítačový program kontroluje výjimky a vhodně je zpracovává. To znamená, že vývojář musí kontrolovat pravděpodobné výjimky a psát kód pro jejich zpracování. Pokud program dobře zpracovává výjimky, lze neočekávané chyby odhalit a zvládnout, aniž by došlo k pádu programu.

Výjimky jsou „vyhozeny“, když pak nastanou, a jsou „zachyceny“ některým jiným kódem v programu. Mohou být zahazovány explicitně pomocí příkazu throw nebo implicitně v rámci klauzule try. Níže je uveden příklad „try / catch“ syntaxe v jazyce Java. Následující kód se pokouší dělit nulou, ale vyhodí výjimku ArithmeticException a jako výsledek vrátí 0.

 1. int a = 11;
 2. int b = 0;
 3. int result = 0;
 4. try {
 5.   int c = a / b;
 6.   result = c;
 7. } catch(ArithmeticException ex) {
 8.   result = 0;
 9. }
10. return result;

 

Na řádku 5 (při dělení 11 nulou) je vyhozena výjimka, takže zbytek příkazu try (řádek 6) se neprovede. Místo toho je výjimka zachycena na řádku 7 a jako výsledek je vrácena hodnota 0.

Definice Exception na této stránce je původní definice na SharTec.eu. Pokud chcete na tuto stránku odkázat, nezapomeňte uvést zdroj článku.

Cílem webu SharTec.eu je srozumitelně vysvětlit počítačovou terminologii. Snažíme se o jednoduchost a přesnost každé definice, kterou zveřejňujeme. Pokud máte připomínky k definici jazyka Výjimka nebo chcete navrhnout nový technický termín, kontaktujte nás.

Cieľom stránky SharTec.eu je vysvetľovať počítačovú terminológiu zrozumiteľným spôsobom. Pri každej uverejnenej definícii sa snažíme o jednoduchosť a presnosť. Ak máte pripomienky k definícii jazyka Výjimka alebo chcete navrhnúť nový technický termín, kontaktujte nás.