logo

Java aruncă cuvântul cheie

The Java aruncă cuvântul cheie este folosit pentru a declara o excepție. Oferă o informație programatorului că poate apărea o excepție. Deci, este mai bine ca programatorul să furnizeze codul de gestionare a excepțiilor, astfel încât fluxul normal al programului să poată fi menținut.

Gestionarea excepțiilor este folosită în principal pentru a gestiona excepțiile verificate. Dacă apare vreo excepție neverificată, cum ar fi NullPointerException, este vina programatorilor că nu verifică codul înainte de a fi utilizat.

python este numeric

Sintaxa aruncărilor Java

 return_type method_name() throws exception_class_name{ //method code } 

Ce excepție ar trebui declarată?

Ani: Excepție bifată numai, deoarece:

    excepție nebifată:sub controlul nostru, astfel încât să ne putem corecta codul.eroare:peste controlul nostru. De exemplu, nu putem face nimic dacă apare VirtualMachineError sau StackOverflowError.

Avantajul cuvântului cheie Java aruncă

Now Checked Exception poate fi propagată (redirecționată în stiva de apeluri).

Oferă informații apelantului metodei despre excepție.

Java aruncă un exemplu

Să vedem exemplul clauzei Java throws care descrie că excepțiile verificate pot fi propagate prin cuvântul cheie throws.

Testthrows1.java

 import java.io.IOException; class Testthrows1{ void m()throws IOException{ throw new IOException('device error');//checked exception } void n()throws IOException{ m(); } void p(){ try{ n(); }catch(Exception e){System.out.println('exception handled');} } public static void main(String args[]){ Testthrows1 obj=new Testthrows1(); obj.p(); System.out.println('normal flow...'); } } 
Testează-l acum

Ieșire:

 exception handled normal flow... 

Regula: Dacă apelăm o metodă care declară o excepție, trebuie fie să prindem, fie să declarăm excepția.

Există două cazuri:

realizarea de tabele din latex
    Cazul 1:Am prins excepția, adică am gestionat excepția folosind blocul try/catch.Cazul 2:Am declarat excepția, adică cuvântul cheie throws specificat cu metoda.

Cazul 1: Gestionați excepția folosind blocul try-catch

În cazul în care gestionăm excepția, codul va fi executat bine indiferent dacă excepția apare în timpul programului sau nu.

Testthrows2.java

 import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } public class Testthrows2{ public static void main(String args[]){ try{ M m=new M(); m.method(); }catch(Exception e){System.out.println('exception handled');} System.out.println('normal flow...'); } } 
Testează-l acum

Ieșire:

 exception handled normal flow... 

Cazul 2: declarați excepția

  • În cazul în care declarăm excepția, dacă excepția nu apare, codul va fi executat bine.
  • În cazul în care declarăm excepția și apare excepția, aceasta va fi aruncată în timpul execuției deoarece aruncări nu se ocupă de excepție.

Să vedem exemple pentru ambele scenarii.

A) Dacă nu apare o excepție

Testthrows3.java

 import java.io.*; class M{ void method()throws IOException{ System.out.println('device operation performed'); } } class Testthrows3{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } } 
Testează-l acum

Ieșire:

exemplu de tăiere alfa beta
 device operation performed normal flow... 

B) Dacă apare o excepție

Testthrows4.java

 import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } class Testthrows4{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } } 
Testează-l acum

Ieșire:

cuvânt cheie Java aruncare

Diferența dintre aruncare și aruncare

Click pe mine pentru detalii

Que) Putem reintroduce o excepție?

Da, aruncând aceeași excepție în blocul catch.