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žítV 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í.

void ExceptionExample() throws ArithmeticException,
NullPointerException
(
throw

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.

void ExceptionExample() throws ArithmeticException,
NullPointerException
(
throw new NullPointerException ();
)

Na základě počtu výjimekV 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:

// throw only a particular exception
throw new NullPointerException ();

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:

void ExceptionExample() throws ArithmeticException,
NullPointerException
(
throw new NullPointerException ();
)

Z pohledu syntaxePoužíváme házení uvnitř funkce a zpracováváme jediný typ výjimky

Například:

// throw only a particular exception
throw new NullPointerException ();

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:

void ExceptionExample() throws ArithmeticException,
NullPointerException
(
throw new NullPointerException ();
)

Kontrolována / nekontrolovaná perspektivaKontrolované 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:

void ExceptionExample() throws ArithmeticException,
NullPointerException
(
throw new NullPointerException (); //null pointer was not checked
, hence we used in throw
)

Když známo výjimku apriori a zmíníme ty v házení, stanou se kontrolovanými výjimkami.

Například:

void ExceptionExample() throws ArithmeticException,
NullPointerException //explicit checked exceptions
(
//other code
)

Příklad kóduHázet:

public class ExceptionExample (
public static void main(String() args)
(
// Use of checked Exception by throw
try (
double num=1/0;
throw new ArithmeticException();
)
catch (ArithmeticException e)
(
e.printStackTrace();
)
)
)

Hodí:

import java.io.IOException;
public class ExceptionExample (
public static void main(String() args)
throws ArithmeticException //here we use unchecked
exception by throws
(
double num=1/0;
System.out.println (num);
)
)

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 -

  1. Seznam Java vs Seznam polí
  2. JavaScript vs VBScript
  3. PHP vs JavaScript
  4. C vs Java

Kategorie: