Rozdíl mezi hodem a hodem v Javě
Výjimkou je událost, která se stane během provádění programu v javě a která v zásadě ztěžuje celkové provádění kódu. Někdy systém zpracovává výjimku ve výchozím nastavení, ale v některých případech musíme výjimku na základě našeho kódu nebo situací řešit explicitně. Zpracování výjimek přizpůsobeným způsobem lze zpracovat pomocí: vyzkoušejte, chytejte, házejte, házejte a nakonec klíčová slova. Pokud chceme v našem kódu definovat výjimku, použijeme throw, zatímco když chceme explicitně definovat více výjimek, použijeme hody. V tomto tématu budeme diskutovat srovnání mezi hodem a hodem
Co je Throw?
Pokud chceme zpracovat jakoukoli výjimku v našem kódu, která není zaškrtnutá, použijeme throw. Házení může být použito v našem kódu pro zpracování výjimek explicitním způsobem. Pamatujte, že pomocí házení dokážeme zpracovat vždy pouze jeden typ výjimky. Pokud chcete použít pro vícenásobné použití hodu, musíte použít házení tolikrát.
Syntax:
throw
Příklad:
throw new ArithmeticException();
Tyto výjimečné případy musí být podtřída zvaná Throwable. Důvodem je, že Throwable má svou podtřídu s názvem Výjimka a ve třídě výjimek jsou všechny uživatelem definované třídy výjimek umístěny. Proto se ujistěte, že používáte výjimkové instance, které jsou podtřídami pod řádkem házení
Teď, pochopíme průběh programu, když ho použijeme k házení. Kód bude protékat, dokud nedosáhne hodu a poté vyhledá blok try-catch. Blok try se prozkoumá, aby se zjistilo, zda uvnitř bloku catch je nějaký příkaz, který zmínil výjimku podobnou výskytu. Pokud ano, pak se k tomu přesune ovládání. Pokud ne, vyhledá další blok try-catch a to pokračuje. Předpokládejme, že nenajde žádný takový blok try-catch, který by zpracoval výjimku, pak systém bude zpracovávat výjimku pomocí výchozí obsluhy výjimky a kód bude ukončen.
Co je Throws?
Když předpokládáme, že metoda může na základě zkušeností ukázat některé výjimky v našem kódu, zmíníme všechny výjimky v podpisu metody pomocí klíčového slova vyvolání. Všechny výjimky budou uvedeny odděleny čárkami.
Syntax:
() throws,
Příklad:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
Když máte představu, co házení a házení dělají, podívejme se na rozdíly mezi házením a házením, jak je uvedeno níže:
Srovnání hlava-hlava mezi hodem vs hodem (infografika)
Níže je pět nejvýznamnějších rozdílů mezi Throw vs Throw v Javě
Klíčové rozdíly mezi Throw vs Throw
Podívejme se na hlavní rozdíly mezi Throw vs Throw v java, jak je uvedeno níže:
- Pokud chceme v našem kódu definovat výjimku, použijeme throw. Pokud však chceme explicitně definovat výjimky, použijeme hody.
- Pokud použijeme throw, v případě zkontrolovaných výjimek nemůže kód vytéct. Když jsou výjimky zkontrolovány, lze je vytéct pomocí hodů
- Po syntaxi píšeme proměnnou pro instanci po vyvolání. Zatímco po hodech píšeme třídy výjimek oddělené čárkami
- Používáme házení podle definice metody. Zatímco v podpisu metody deklarujeme vyvolání výjimky.
- Throw má omezení na zpracování jediné výjimky najednou. Na druhou stranu může Throws zpracovat více výjimek.
Srovnávací tabulka Throw vs. Throw
Pojďme diskutovat o top srovnání mezi Throw vs Throw v Javě
Základ srovnání mezi Throw vs Throw |
Házet |
Hází |
Jak a kdy použít | V těchto případech, kdy musíme v kódu poskytnout logickou výjimku, v těchto případech obvykle používáme klíčové slovo throw pod funkcí.
| V takových případech, kdy může výpis funkce vyústit v výjimku, obvykle v těchto případech použijeme klíčové slovo s funkcí k vyřizování těchto výjimek.
|
Na základě počtu výjimek | V jednom okamžiku lze hodit k vyvolání pouze jedné výjimky. Když musíme hodit konkrétní výjimku, použijeme hod.
Například:
| Házky mohou zpracovat více výjimek. Když potřebujeme zpracovat více výjimek, můžeme použít hody, kde je název výjimek uveden oddělený čárkou. Když nastane jakákoli výjimka, automaticky se shoduje s deklarovanými výjimkami s hodem a podle toho zachází.
Například:
|
Z pohledu syntaxe | Používáme házení uvnitř funkce a zpracováváme jediný typ výjimky
Například:
| Použijeme funkci throw s funkcí ke zpracování více výjimek najednou pomocí názvu těchto tříd výjimek.
Například:
|
Kontrolována / nekontrolovaná perspektiva | Kontrolované výjimky nelze zpracovat házením. Dokáže zpracovat pouze nezaškrtnuté výjimky, které nelze vyhodit hozením nebo zaškrtnutými výjimkami.
Například:
| Když známo výjimku apriori a zmíníme ty v házení, stanou se kontrolovanými výjimkami.
Například:
|
Příklad kódu | Házet:
| Hodí:
|
Závěr
To jsou rozdíly mezi hodem a hodem v Javě. Házení vám může poskytnout svobodu používání více výjimek najednou, ale házení nemůže. Zejména na základě tohoto rozdílu musíte použít hody, pokud potřebujete poskytnout více výjimek najednou, pokud si nejste jisti, pak jednoduše použijte hodit pro vyjmutí výjimek jeden po druhém.
Doporučené články
Toto je průvodce programem Throw vs Throw v Javě. Zde diskutujeme házení a házení v java klíčových rozdílech s infografikou a srovnávací tabulkou. Další informace naleznete také v dalších navrhovaných článcích -
- Seznam Java vs Seznam polí
- JavaScript vs VBScript
- PHP vs JavaScript
- C vs Java