Forskellen mellem Throw vs Throws i Java
En undtagelse er en begivenhed, der er sket under udførelsen af et program i java, der dybest set hæmmer den samlede udførelse af koden. Nogle gange håndterer systemet undtagelsen som standard, men i nogle tilfælde er vi nødt til at håndtere undtagelse baseret på vores kode eller situationer eksplicit. Undtagelse aflevering på tilpasset måde kan håndteres ved hjælp af: prøv, fang, kast, kast og til sidst nøgleord. Når vi ønsker at definere undtagelse i vores kode, bruger vi kast, mens vi, når vi ønsker at definere flere undtagelser eksplicit, bruger kast. I dette emne vil vi diskutere sammenligninger mellem kast og kast
Hvad er kastet?
Når vi vil håndtere enhver undtagelse i vores kode, som ikke er markeret, bruger vi kast. Et kast kan bruges i vores kode til at håndtere undtagelser på en eksplicit måde. Husk, at vi kun kan håndtere en type undtagelser ad gangen ved hjælp af kast. Hvis du vil bruge til flere brug af kast, skal du bruge kast det mange gange.
Syntaks:
throw
Eksempel:
throw new ArithmeticException();
Disse undtagelsesinstanser kræves at være underklasse kaldet Throwable. Dette skyldes, at Throwable har sin underklasse kaldet Undtagelse, og under undtagelsesklasse er alle de brugerdefinerede undtagelsesklasser bosiddende. Sørg derfor for, at du bruger undtagelsesforekomster, der er underklasser under linjen med kastbar
Lad os nu forstå strømmen af programmet, når vi bruger det til at kaste. Koden flyder igennem, indtil den når kastet, og efter dette søger den efter try-catch-blokken. Forsøgsblokken undersøges for at kontrollere, om der er nogen udsagn inde i fangstblokken, der har nævnt undtagelse svarende til forekomsten. Hvis ja, flyttes kontrol til det. Hvis ikke, søger den efter den næste try-catch-blok, og dette fortsætter. Antag, at den ikke finder nogen sådan try-catch-blok til at håndtere en undtagelse, så vil systemet håndtere undtagelse ved hjælp af standardhåndtering af undtagelse og kode afsluttes.
Hvad er kastet?
Når vi antager, at en metode kan vise nogle undtagelser i vores kode baseret på erfaring, nævner vi alle undtagelser i metodesignaturen ved hjælp af throws-søgeord. Alle undtagelser vil blive nævnt adskilt af kommaer.
Syntaks:
() throws,
Eksempel:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
Når du har fået en idé om, hvad kast og kast gør, så lad os se på forskellene mellem kast og kast som nedenfor:
Sammenligning af hoved til hoved mellem Throw vs Throws (Infographics)
Nedenfor er de top 5 forskelle mellem Throw vs Throws i Java
Vigtige forskelle mellem Throw vs Throws
Lad os se på de vigtigste forskelle mellem Throw vs Throws in java som nedenfor:
- Når vi ønsker at definere en undtagelse i vores kode, bruger vi throw. Men når vi ønsker at definere undtagelser eksplicit, bruger vi kast.
- Hvis vi bruger kast, kan kode ikke flyde i tilfælde af kontrollerede undtagelser. Når undtagelserne er kontrolleret, kan det flydes ved hjælp af kast
- Syntaksvis skriver vi en variabel til forekomsten efter kast. Mens vi skriver undtagelsesklasser adskilt med komma efter kast
- Vi bruger throw under en metodedefinition. Mens vi erklærer undtagelser fra underskud i underskrivelsen af en metode.
- Throw har en begrænsning af håndtering af den eneste undtagelse ad gangen. På den anden side kan Throws håndtere flere undtagelser.
Kast sammen med kaster sammenligningstabel
Lad os diskutere den bedste sammenligning mellem Throw vs Throws i Java
Grundlag for sammenligning mellem Throw vs Throws |
Kaste |
kaster |
Hvordan eller hvornår man skal bruge | I disse tilfælde, når vi er nødt til at tilvejebringe en logisk undtagelse inde i koden, bruger vi i disse tilfælde generelt kast-nøgleord under en funktion.
| I sådanne tilfælde, når erklæringen om en funktion kan resultere i en undtagelse, bruger vi i disse tilfælde generelt kast-nøgleord med en funktion til at håndtere disse undtagelser.
|
På basis af undtagelsestælling | På et enkelt tidspunkt kan kastet bruges til kun at kaste en undtagelse. Når vi skal kaste en bestemt undtagelse, bruger vi kast.
For eksempel:
| Kaster kan håndtere flere undtagelser. Når vi skal håndtere flere undtagelser, kan vi bruge kast, hvor navnet på undtagelserne nævnes med adskilt af et komma. Når en undtagelse sker, vil den automatisk matche de erklærede undtagelser med kast og håndtere i overensstemmelse hermed.
For eksempel:
|
På syntaks perspektiv | Vi bruger kast inden i en funktion og til at håndtere en enkelt type undtagelse
For eksempel:
| Vi bruger kast med en funktion til at håndtere flere undtagelser på én gang ved at bruge navnet på disse undtagelsesklasser.
For eksempel:
|
Kontrolleret / ikke-markeret perspektiv | Kontrollerede undtagelser kan ikke håndteres ved kast. Det kan kun håndtere ukontrollerede undtagelser, der ikke kan håndteres ved kast eller kontrollerede undtagelser.
For eksempel:
| Når vi kender undtagelsen apriori og nævner dem i kast, vil de blive kontrollerede undtagelser.
For eksempel:
|
Kodeeksempel | Kaste:
| kaster:
|
Konklusion
Dette er forskelle mellem kast og kast i Java. Kaster kan give dig frihed til at bruge flere undtagelser på én gang, men kast kan ikke. Primært baseret på denne sondring skal du bruge kast, hvis du har brug for at give flere undtagelser på én gang, hvis du ikke er sikker, skal du blot bruge kast til at sætte undtagelser en efter en.
Anbefalede artikler
Dette er en guide til Throw vs Throws i Java. Her diskuterer vi kast og kast i java nøgleforskelle med infografik og sammenligningstabel. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -
- Java-liste vs array-liste
- JavaScript vs VBScript
- PHP vs JavaScript
- C vs Java