Video: Rozdiel Medzi Kontrolovanou A Runtime Výnimkou
2024 Autor: Mildred Bawerman | [email protected]. Naposledy zmenené: 2023-12-16 08:42
Začiarknutá výnimka vs Runtime výnimka
Výnimkou je špeciálny typ udalostí, ktoré môžu narušiť normálny priebeh programu. Výnimka názvu pochádza z „výnimočnej udalosti“. Vyhodenie výnimky je proces vytvárania objektu výnimky a jeho odovzdania runtime systému. Keď runtime systém prijme objekt výnimky, pokúsi sa nájsť niekoho, kto by to spracoval v rámci zásobníka hovorov, a to tak, že ho prejde v opačnom poradí (v akom boli volané metódy). Runtime systém je úspešný, ak nájde metódu s obsluhou výnimiek. Obslužný program výnimiek je blok kódu, ktorý dokáže oficiálne spracovať uvedenú výnimku. Ak runtime systém nájde vhodný obslužný program, odovzdá objekt výnimky obslužnému programu. Tomu sa hovorí chytenie výnimky. Ak však výnimku nie je možné spracovať, program sa ukončí. V Javevýnimky dedia z triedy Throwable. Začiarknuté výnimky sú výnimky, pri ktorých je manipulácia vynútená kompilátorom. Výnimky za behu sú typom výnimiek, ktoré kompilátor nekontroluje.
Čo je začiarknutá výnimka?
Začiarknuté výnimky sú buď objekty triedy java.lang.exception, alebo jej podtriedy (okrem java.lang. RuntimeException a jej podtried). Skontrolované výnimky sa „skontrolujú“v čase kompilácie. To znamená, že programátor musí tieto výnimky buď chytiť, alebo vyhodiť, inak by sa kompilácia sťažovala (čo spôsobilo chybu kompilátora). Z tohto dôvodu sú programátorom veľmi dobre známe mnohé kontrolované výnimky. Napríklad IOException a jeho podtriedy sú kontrolované výnimky a kedykoľvek sa programátor zaoberá prístupom alebo úpravou súboru, kompilátor skontroluje, či sa o všetky možné IOExceptions postará programátor.
Čo je to runtime výnimka?
Výnimky za behu pozostávajú z java.lang. RuntimeException a všetkých jeho podtried. Teoreticky povedané, slúžia rovnakému účelu ako kontrolované výnimky a je možné s nimi hádzať alebo narábať ako s kontrolovanými výnimkami, ale manipulácia s nimi nie je vynútená kompilátorom. Runtime výnimky preto patria do rodiny nekontrolovaných výnimiek. NullPointerException, NumberFormatEception, ClassCastException a ArrayIndexOutOfBoundsException sú bežné runtime výnimky v Jave.
Aký je rozdiel medzi kontrolovanou výnimkou a výnimkou za behu?
Aj keď sú kontrolované výnimky aj runtime výnimky nežiaducim výskytom počas vykonávania programu, majú svoje rozdiely. Kontrolovaná manipulácia s výnimkami je vynútená kompilátorom, ale výnimky za behu nie. Preto je potrebné za účelom kompilácie kódu vyvolať alebo spracovať skontrolované výnimky, ale pokiaľ ide o výnimky za behu, takáto požiadavka neexistuje. Následkom toho patria runtime výnimky spolu s chybami do kategórie nekontrolovaných výnimiek.
Nevýhodou kontrolovaných výnimiek je, že programátorka to musí zvládnuť, aj keď nevie, ako na to. Takže ak programátor iba zahodí novú výnimku bez zabalenia pôvodnej, stopa zásobníka patriaca k pôvodnej výnimke sa stratí. Tu sa hodia výnimky za behu. Pretože všetky runtime výnimky je možné spracovať na jednom mieste, programátori tak môžu zapisovať menšie množstvo kódu. Na druhej strane, pretože musia byť zachytené kontrolované výnimky, pre programátora nie je prekvapením. Vždy bude vedieť, ktorá kontrolovaná výnimka by mohla byť hodená určitou metódou. Napriek tomu možno bez vedomia programátora vyvolať rôzne runtime výnimky.
Odporúčaná:
Rozdiel Medzi Výnimkou A Výnimkou
Výnimka vs Výnimka Výnimka a výnimka sú dve slová, ktoré sú často zamieňané kvôli podobnosti svojich tvarov a tvaroslovia. Vlastne existuje
Rozdiel Medzi Komunikáciou Medzi Zvieratami A ľuďmi
Komunikácia zviera vs. človek Prenos zmysluplných informácií je známy ako komunikácia a bola neoddeliteľnou súčasťou úspechu, a preto
Rozdiel Medzi Prerušením A Výnimkou
Prerušenie vs Výnimka V ktoromkoľvek počítači sa počas bežného vykonávania programu môžu vyskytnúť udalosti, ktoré môžu spôsobiť dočasné zastavenie procesora. Diania
Rozdiel Medzi Kontrolovanou A Nekontrolovanou Reťazovou Reakciou
Kľúčový rozdiel - kontrolovaná vs nekontrolovaná reťazová reakcia Kľúčovým rozdielom medzi kontrolovanou a nekontrolovanou reťazovou reakciou je kontrolovaná chai
Rozdiel Medzi Skontrolovanou A Nezaškrtnutou Výnimkou V Jave
Kľúčový rozdiel - kontrolovaná a nekontrolovaná výnimka v jazyku Java Výnimkou je chyba za behu. Existujú dva typy výnimiek známe ako začiarknuté a nezaškrtnuté