Forskellen mellem kast og kast
'Skast' og 'kast' ville virke ens i det almindelige liv med kun en tidsforskel. Men i programmeringssproget, Java, er disse to meget forskellige fra hinanden og bruges til at udføre forskellige opgaver. Kast og Kast er nøgleord i java, der bruges til håndtering af undtagelser.
Brug af Throw and Throws i Java
'Throw'-nøgleordet bruges til at give et tilfælde af undtagelse, som programmøren manuelt har oprettet til JVM, mens 'throws'-nøgleordet bruges til at give ansvaret for undtagelseshåndtering, som opstod i metoden, til caller-metoden.
Syntaksmæssigt:In throw-forekomst af undtagelse er defineret i undtagelsesblokken/-klassen. I Throws efterfølges throw nøgleordet af undtagelsesklassen
Skast vs. Kast i Java
KAST | KAST |
Et kast bruges til eksplicit at kaste en undtagelse | A kaster for at erklære en eller flere undtagelser, adskilt af kommaer. |
Kan kaste en enkelt undtagelse ved hjælp af throw | Flere kan kastes ved hjælp af Throws |
Dette søgeord bruges i metoden | Signaturmetoden bruges med nøgleordskast |
Kun umarkerede undtagelser udbredte ved hjælp af throw-søgeord. | For at rejse en undtagelse kaster nøgleord efterfulgt af klassenavnet og markeret undtagelse kan udbredes. |
Throw søgeord efterfølges af instansvariablen | Kaster søgeord efterfølges af undtagelsesklassen |
Hvad er Throw in Java
Smid søgeord i java bruges til at kaste en undtagelse eksplicit og logisk defineret af programmøren under programstyringens bevægelser fra en blok til en anden, forudsat at fejlundtagelsen er defineret og håndteret i overensstemmelse hermed.
Throw Syntax
syntax of throw :- throw <instance>;
Skast eksempel i Java
void mtod (){
throw new mathsexception(“we are sorry there is no solution”);
}
Program :
public class ThrowExample{
void Votingage(int age){
if(age<18)
throw new ArithmeticException("you can't vote as not Eligible to vote");
else
System.out.println("Eligible for voting");
}
public static void main(String args[]){
ThrowExample obj = new ThrowExample();
obj.Votingage(13);
System.out.println("End Of Program");
}
}
OUTPUT
$java -Xmx128M -Xms16M ThrowExample
Undtagelse i tråden "main" java.lang.ArithmeticException:du kan ikke stemme som ikke stemmeberettiget på ThrowExample.Votingage(ThrowExample.java:5) på ThrowExample.main(ThrowExample.java:11)
Hvad er Throws i Java?
Indkast: bruges til at erklære og kalde en undtagelsesblok, hvilket betyder, at dens funktion ligner try-catch-blokken.
Throws-eksempel i Java
public class ThrowsExample{
int divion(int a, int b) throws ArithmeticException{
int intet = a/b;
return intet;
}
public static void main(String args[]){
ThrowsExample obj = new ThrowsExample();
try{
System.out.println(obj.divion(15,0));
}
catch(ArithmeticException e){
System.out.println("Division cannot be done using ZERO");
}
}
}
Output
$java -Xmx128M -Xms16M ThrowsExample
Division kan ikke udføres ved hjælp af NUL
Nøgleforskel mellem Throws og Throw i Java
✓ Den grundlæggende forskel mellem disse to termer er, at 'throws' nøgleordet bruger navnet på undtagelsesklasserne, hvor 'throw' nøgleordet bruger undtagelsesobjektet.
✓ 'kastet' søgeord kan kun kaste én, dvs. en enkelt undtagelsesforekomst. På den anden side kan throws søgeord kaste flere undtagelsesklasser og adskilles med et komma.
✓ 'kastet' nøgleord bruges til blot at kaste en undtagelse, hvor 'smid' nøgleord bruges til erklæring om undtagelse, hvilket angiver den undtagelse, der er kastet af metoden.
✓ 'kastet' søgeord kan bruges inde i metode eller statisk blok initializer. 'Kastene' kunne derimod kun bruges i metodedeklaration.
✓Nøgleordet 'smid' er ikke i stand til at udbrede den umarkerede undtagelse til den kaldende metode, hvor nøgleordet 'smid' bruges til at udbrede undtagelsen til den kaldende metode. Ikke-markerede undtagelser kunne dog udbredes ved at bruge throw søgeordsord.
✓Et andet grundlag for forskellen mellem de to er syntaks. Syntaksen for 'throw' efterfølges af en instansvariabel, men syntaksen for 'throws' efterfølges af undtagelsesklassenavnene.
✓’Smid’ søgeord bruges inden for metoden, hvor 'smid' søgeord bruges med metodesignaturen.