Forskjellen mellom kaste vs kaster i Java
Et unntak er en hendelse som skjedde under utførelsen av et program i java, som i utgangspunktet hemmer den totale gjennomføringen av koden. Noen ganger håndterer systemet unntaket som standard, men i noen tilfeller må vi håndtere unntak basert på vår kode eller situasjoner eksplisitt. Unntak som leveres på tilpasset måte kan håndteres ved å bruke: prøve, fang, kast, kast og til slutt nøkkelord. Når vi ønsker å definere unntak i koden vår, vil vi bruke kast, mens når vi ønsker å definere flere unntak eksplisitt, vil vi bruke kast. I dette emnet vil vi diskutere sammenligninger mellom kast og kast
Hva er å kaste?
Når vi ønsker å håndtere noe unntak i koden vår som ikke er merket, vil vi bruke kast. Et kast kan brukes i koden vår for å håndtere unntak på en eksplisitt måte. Husk at vi bare kan håndtere en type unntak av gangen ved å bruke kast. Hvis du vil bruke til flere kast, må du bruke kast det mange ganger.
syntaks:
throw
Eksempel:
throw new ArithmeticException();
Disse unntakstilfellene må være underklasse kalt Throwable. Dette er fordi Throwable har sin underklasse kalt Unntak, og under unntaksklasse er alle brukerdefinerte unntaksklasser bosatt. Forsikre deg derfor om at du bruker unntaksforekomster som er underklasser under linjen med kast
La oss nå forstå flyten av programmet når vi bruker det til å kaste. Koden vil strømme gjennom til den når kastet, og etter dette vil den søke etter try-catch-blokken. Tryblokken blir undersøkt for å sjekke om det er noen påstander inne i fangstblokken som har nevnt unntak som ligner forekomsten. Hvis ja, flyttes kontrollen til det. Hvis ikke, vil den søke etter neste prøvefangstblokk, og dette fortsetter. Anta at den ikke finner noen slike try-catch-blokkeringer for å håndtere et unntak, da vil systemet håndtere unntak ved bruk av standard unntakshåndterer og kode vil bli avsluttet.
Hva er det som kaster?
Når vi antar at en metode kan vise noen unntak i koden vår basert på erfaring, nevner vi alle unntakene i metodesignaturen ved å bruke kast-nøkkelord. Alle unntakene vil bli nevnt atskilt med komma.
syntaks:
() throws,
Eksempel:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
Når du har fått en ide om hva kast og kast gjør, la oss ta en titt på forskjellene mellom kast og kast som nedenfor:
Sammenligning av hode til hode mellom Throw vs Throws (Infographics)
Nedenfor er de topp 5 forskjellene mellom Throw vs Throws i Java
Viktige forskjeller mellom Kast vs Kast
La oss se på de viktigste forskjellene mellom Throw vs Throws in java som nedenfor:
- Når vi ønsker å definere et unntak i koden vår, bruker vi kast. Men når vi ønsker å definere unntak eksplisitt, vil vi bruke kast.
- Hvis vi bruker kast, kan ikke kode flyte i tilfelle sjekket unntak. Når unntakene er sjekket, kan det flytes ved hjelp av kast
- Syntaksmessig skriver vi en variabel for forekomsten etter kast. Mens vi skriver unntaksklasser atskilt med komma etter kast
- Vi bruker kast under en metodedefinisjon. Mens vi erklærer kast unntak i signaturen til en metode.
- Throw har en begrensning i å håndtere det eneste unntaket av gangen. På den annen side kan Throws takle flere unntak.
Kast vs kaster sammenligningstabell
La oss diskutere topp sammenligningen mellom Throw vs Throws i Java
Grunnlag for sammenligning mellom Throw vs Throws |
Kaste |
kaster |
Hvordan eller når du skal bruke | I de tilfellene, når vi trenger å gi et logisk unntak i koden, bruker vi, i de tilfellene, generelt sett et nøkkelord under en funksjon.
| I slike tilfeller, når uttalelsen om en funksjon kan resultere i et unntak, bruker vi, i de tilfellene, vanligvis kasterøkkelord med en funksjon for å håndtere disse unntakene.
|
På grunnlag av unntakstellingen | På et enkelt tidspunkt kan kastet brukes til å kaste bare ett unntak. Når vi trenger å kaste et bestemt unntak, vil vi bruke kast.
For eksempel:
| Kaster kan håndtere flere unntak. Når vi trenger å håndtere flere unntak, kan vi bruke kast, der navnet på unntakene blir nevnt med atskilt med komma. Når noe unntak skjer, vil det automatisk samsvare med de deklarerte unntakene med kast og håndtere deretter.
For eksempel:
|
På syntaks perspektiv | Vi bruker kast inn i en funksjon og for å håndtere en enkelt type unntak
For eksempel:
| Vi vil bruke kast med en funksjon for å håndtere flere unntak på en gang ved å bruke navnet på disse unntaksklassene.
For eksempel:
|
Sjekket / ukontrollert perspektiv | Sjekkede unntak kan ikke håndteres ved kast. Den kan kun håndtere ukontrollerte unntak som ikke kan håndteres ved kast eller sjekket unntak.
For eksempel:
| Når vi kjenner unntaket apriori og nevner de som kastes, vil de bli sjekket unntak.
For eksempel:
|
Kodeeksempel | Kaste:
| kaster:
|
Konklusjon
Dette er forskjeller mellom kast og kast i Java. Kaster kan gi deg frihet til å bruke flere unntak på en gang, men kast kan ikke. Primært basert på denne skillet, må du bruke kast hvis du trenger å gi flere unntak på en gang, hvis du ikke er sikker, bare bruk kast for å sette unntak ett etter ett.
Anbefalte artikler
Dette er en guide til Throw vs Throws i Java. Her diskuterer vi kast og kast i java viktige forskjeller med infografikk og sammenligningstabell. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -
- Java List vs Array List
- JavaScript vs VBScript
- PHP vs JavaScript
- C vs Java