Ero Java-heittojen ja -heittojen välillä

Poikkeuksena on tapahtuma, joka tapahtuu Java-ohjelman suorittamisen aikana ja joka pohjimmiltaan haittaa koodin yleistä suoritusta. Joskus järjestelmä käsittelee poikkeuksen oletuksena, mutta joissain tapauksissa meidän on käsiteltävä poikkeusta koodimme tai tilanteidemme perusteella nimenomaisesti. Poikkeuksellinen käsittely mukautetulla tavalla voidaan hoitaa käyttämällä: kokeile, saalis, heitä, heittää ja lopulta avainsanoja. Kun haluamme määritellä poikkeuksen koodissamme, käytämme heittoa, kun taas kun haluamme määritellä useita poikkeuksia nimenomaisesti, käytämme heittoja. Tässä aiheessa keskustellaan vetoheittojen ja heittojen vertailuista

Mikä on heittää?

Kun haluamme käsitellä kaikkia poikkeuksia koodistamme, joita ei ole valittu, käytämme heittää. Heittoa voidaan käyttää koodimme sisällä käsitellä poikkeuksia nimenomaisella tavalla. Muista, että pystymme käsittelemään vain yhden tyyppisiä poikkeuksia kerrallaan heiton avulla. Jos haluat käyttää useita heittää, sinun täytyy käyttää heittää monta kertaa.

Syntaksi:

throw

Esimerkki:

throw new ArithmeticException();

Näiden poikkeustapausten on oltava alaluokkaa nimeltään Throvable. Tämä johtuu siitä, että Throvablerin alaluokka on nimeltään Poikkeus ja poikkeusluokassa kaikki käyttäjän määrittelemät poikkeusluokat sijaitsevat. Siksi varmista, että käytät poikkeustapauksia, jotka ovat alaluokkia heitettävän linjan alla

Ymmärrämme nyt ohjelman kulku, kun käytämme sitä heittää. Koodi virtaa läpi, kunnes se saavuttaa heiton, ja tämän jälkeen se etsii try-catch-lohkoa. Koelohkoa tutkitaan sen tarkistamiseksi, onko saalislohkon sisällä lause, jossa on mainittu poikkeus, joka on samanlainen kuin tapahtuma. Jos kyllä, ohjaus siirretään siihen. Jos ei, se etsii seuraavaa try-catch-lohkoa ja tämä jatkuu. Oletetaan, että se ei löydä yhtään sellaista yrittäjä-saallohkoa poikkeuksen käsittelemiseksi, jolloin järjestelmä käsittelee poikkeusta poikkeuksen oletuskäsittelijän avulla ja koodi lopetetaan.

Mikä on heittää?

Kun oletamme, että menetelmä saattaa näyttää joitain poikkeuksia koodissamme kokemuksen perusteella, mainitsemme kaikki menetelmän allekirjoituksen poikkeukset käyttämällä heittää avainsanaa. Kaikki poikkeukset mainitaan pilkuilla erotettuna.

Syntaksi:

() throws,

Esimerkki:

void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)

Kun sinulla on käsitys siitä, mitä heitto ja heitot tekevät, tutkitaan seuraavassa heittämisen ja heittämisen eroja:

Head to Head -vertailu vertailuheittojen välillä (infografia)

Alla on 5 suosituinta eroa Java-visioiden ja -hyökkäysten välillä

Tärkeimmät erot heittämisen ja heittämisen välillä

Tarkastellaan seuraavia Java-heittomuotojen keskeisiä eroja:

  • Kun haluamme määritellä poikkeuksen koodissamme, käytämme heittoa. Mutta kun haluamme määritellä poikkeukset nimenomaisesti, käytämme heittoja.
  • Jos käytämme heittoa, koodi ei voi virrata tarkistettujen poikkeusten tapauksessa. Kun poikkeukset tarkistetaan, se voidaan virrata heittoilla
  • Syntaksittaisesti, me kirjoitamme muuttujan esiintymälle heiton jälkeen. Kun taas kirjoitamme poikkeusluokat pilkuilla erotettuina heittojen jälkeen
  • Käytämme heittoa menetelmän määritelmän alla. Me ilmoitamme, että menetelmän allekirjoittamiseen liittyy poikkeuksia.
  • Heitolla on rajoitus käsitellä ainoaa poikkeusta kerrallaan. Toisaalta, Threads pystyy käsittelemään useita poikkeuksia.

Heitä vs heittää vertailutaulukko

Keskustelemme Java-sovelluksen parhaiden vertailujen Throw vs Throws välillä

Heittojen ja heittojen vertailun perusteet

Heittää

heittää

Kuinka tai milloin käyttääNiissä tapauksissa, kun joudumme tarjoamaan looginen poikkeus koodin sisällä, käytämme yleensä niissä tapauksissa heittää avainsanaa funktion alla.

void ExceptionExample() throws ArithmeticException,
NullPointerException
(
throw

Niissä tapauksissa, joissa funktion lausunto voi johtaa poikkeukseen, käytämme yleensä niissä tapauksissa funktiohaun avainsanoja käsittelemään näitä poikkeuksia.

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

Poikkeusten perusteella lasketaanYhdessä ajankohdassa heitettä voidaan käyttää vain yhden poikkeuksen heittämiseen. Kun meidän täytyy heittää tietty poikkeus, käytämme heittää.

Esimerkiksi:

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

Heität voivat käsitellä useita poikkeuksia. Kun meidän on käsiteltävä useita poikkeuksia, voimme käyttää heittoja, joissa poikkeusten nimi mainitaan pilkulla erotettuna. Kun poikkeus tapahtuu, se vastaa automaattisesti ilmoitettuja poikkeuksia heittoilla ja käsittelee vastaavasti.

Esimerkiksi:

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

Syntaksin näkökulmastaKäytämme heittää toiminnon sisällä ja käsitellä yhden tyyppisiä poikkeuksia

Esimerkiksi:

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

Käytämme heittoa toiminnolla käsittelemään useita poikkeuksia kerralla käyttämällä näiden poikkeusluokkien nimeä.

Esimerkiksi:

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

Tarkastettu / poistettu näkymäTarkistettuja poikkeuksia ei voida käsitellä heitolla. Se voi käsitellä vain tarkistamattomia poikkeuksia, joita ei voida käsitellä heittoilla tai tarkastetuilla poikkeuksilla.

Esimerkiksi:

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

Kun tiedämme poikkeuksen apriori ja mainitsemme heittäjät, niistä tulee tarkistettuja poikkeuksia.

Esimerkiksi:

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

KoodiesimerkkiHeittää:

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();
)
)
)

heittoja:

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);
)
)

johtopäätös

Nämä ovat eroja Java-heittojen ja -heittojen välillä. Heität voivat antaa sinulle vapauden käyttää useita poikkeuksia kerralla, mutta heittää ei voi. Perustuen ensisijaisesti tähän erotukseen, sinun on käytettävä heittoja, jos sinun on annettava useita poikkeuksia kerralla, jos et ole varma, käytä vain heittää asettaaksesi poikkeukset yksi kerrallaan.

Suositellut artikkelit

Tämä on opas Throw vs Throws -sovellukseen Java-sovelluksessa. Keskustelemme tässä java-avainten heittämistä vs. heittoja kohtaan infografian ja vertailutaulun kanssa. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -

  1. Java-luettelo vs. taulukkoluettelo
  2. JavaScript vs. VBScript
  3. PHP vs. JavaScript
  4. C vs. Java