Java >> Java tutorial >  >> Tag >> throw

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.


No
Java tag