Skillnaden mellan kasta vs kastar i Java
Ett undantag är en händelse som inträffade under exekveringen av ett program i java som i princip hindrar den totala exekveringen av koden. Ibland hanterar systemet undantag som standard, men i vissa fall måste vi hantera undantag baserat på våra kod eller situationer uttryckligen. Undantag som skickas på anpassat sätt kan hanteras med hjälp av: prova, fånga, kasta, kast och slutligen nyckelord. När vi vill definiera undantag i vår kod kommer vi att använda kast, medan när vi vill definiera flera undantag uttryckligen kommer vi att använda kast. I det här ämnet kommer vi att diskutera jämförelser mellan kast och kast
Vad är kasta?
När vi vill hantera något undantag i vår kod som inte är markerad, kommer vi att använda kast. Ett kast kan användas i vår kod för att hantera undantag på ett uttryckligt sätt. Kom ihåg att vi bara kan hantera en typ av undantag i taget med kast. Om du vill använda för flera med kast, måste du använda kast så många gånger.
Syntax:
throw
Exempel:
throw new ArithmeticException();
Dessa undantagstillfällen måste vara underklass som kallas Throwable. Detta beror på att Throwable har sin underklass som heter undantag och under undantagsklassen finns alla användardefinierade undantagsklasser. Se därför till att du använder undantagstillfällen som är underklasser under linjen med kasta
Låt oss nu förstå flödet i programmet när vi använder det för att kasta. Koden kommer att rinna igenom tills den når kastet och efter det kommer den att söka efter try-catch-blocket. Försöksblocket undersöks för att kontrollera om det finns något uttalande i fångstblocket som har nämnt undantag som liknar förekomsten. Om ja, flyttas kontrollen till det. Om inte, kommer den att söka efter nästa try-catch-block och detta fortsätter. Anta att det inte finns något sådant try-catch-block för att hantera ett undantag, då kommer systemet att hantera undantag med hjälp av standardhanteraren av undantag och kod kommer att avslutas.
Vad är det som kastar?
När vi antar att en metod kan visa några undantag i vår kod baserat på erfarenhet, nämner vi alla undantag i metodsignaturen med hjälp av nyckelord. Alla undantag kommer att nämnas separerade med komma-tecken.
Syntax:
() throws,
Exempel:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
När du har fått en uppfattning om vad kast och kast gör, låt oss ta en titt på skillnaderna mellan kast och kast som nedan:
Jämförelse mellan huvudet och huvudet mot kastar (Infographics)
Nedan visas de 5 bästa skillnaderna mellan Throw vs Throws i Java
Viktiga skillnader mellan kasta vs kastar
Låt oss titta på de viktigaste skillnaderna mellan Throw vs Throws in java som nedan:
- När vi vill definiera ett undantag i vår kod kommer vi att använda kast. Men när vi vill definiera undantag uttryckligen kommer vi att använda kast.
- Om vi använder kast, kan koden inte flyta vid kontrollerade undantag. När undantagen är kontrollerade kan det flyts med kast
- Syntaxmässigt skriver vi en variabel för instansen efter kast. Medan vi skriver undantagsklasser separerade med komma efter kast
- Vi använder kasta under en metoddefinition. Medan vi förklarar kast undantag i underskrift av en metod.
- Throw har en begränsning av att hantera det enda undantaget åt gången. Å andra sidan kan Throws hantera flera undantag.
Kasta jämför med kastar jämförelsetabellen
Låt oss diskutera den bästa jämförelsen mellan Throw vs Throws i Java
Grund för jämförelse mellan kast mot kast |
Kasta |
Utlöser |
Hur eller när du ska använda | I sådana fall, när vi måste tillhandahålla logiskt undantag inuti koden, använder vi i dessa fall i allmänhet kastnyckelord under en funktion.
| I sådana fall, när uttalandet om en funktion kan resultera i ett undantag, använder vi i dessa fall i allmänhet kast-nyckelord med en funktion för att hantera dessa undantag.
|
På grundval av antalet undantag | Vid en enda tidpunkt kan kastet användas för att bara kasta ett undantag. När vi behöver kasta ett särskilt undantag, kommer vi att använda kast.
Till exempel:
| Kaster kan hantera flera undantag. När vi behöver hantera flera undantag, kan vi använda kast, där namnet på undantagen nämns med separerade av komma. När något undantag inträffar kommer det automatiskt att matcha med de deklarerade undantagen med kast och hantera därefter.
Till exempel:
|
Om syntaxens perspektiv | Vi använder kasta in en funktion och för att hantera en enda typ av undantag
Till exempel:
| Vi kommer att använda kast med en funktion för att hantera flera undantag på en gång genom att använda namnet på dessa undantagsklasser.
Till exempel:
|
Kontrollerat / avmarkerat perspektiv | Kontrollerade undantag kan inte hanteras med kast. Den kan endast hantera underkontrollerade undantag som inte kan hanteras med kast eller kontrollerade undantag.
Till exempel:
| När vi känner till undantaget apriori och nämner de som kastas kommer de att bli kontrollerade undantag.
Till exempel:
|
Kodsexempel | Kasta:
| kast:
|
Slutsats
Detta är skillnader mellan kast och kast i Java. Kast kan ge dig frihet att använda flera undantag på en gång, men kast kan inte. Baserat på denna åtskillnad måste du använda kast om du behöver tillhandahålla flera undantag på en gång om du inte är säker. Använd bara kast för att sätta undantag en efter en.
Rekommenderade artiklar
Detta är en guide till Throw vs Throws i Java. Här diskuterar vi kast och kast i java viktiga skillnader med infografik och jämförelse tabell. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -
- Java List vs Array List
- JavaScript vs VBScript
- PHP vs JavaScript
- C vs Java