logo

Java llança la paraula clau

El Java llança la paraula clau s'utilitza per declarar una excepció. Dóna informació al programador que pot produir-se una excepció. Per tant, és millor que el programador proporcioni el codi de gestió d'excepcions perquè es pugui mantenir el flux normal del programa.

El maneig d'excepcions s'utilitza principalment per gestionar les excepcions marcades. Si es produeix alguna excepció no marcada, com ara NullPointerException, és culpa dels programadors que no estigui comprovant el codi abans d'utilitzar-lo.

pàgines del servidor java

Sintaxi de llançaments de Java

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

Quina excepció s'ha de declarar?

Anys: Només l'excepció marcada, perquè:

    excepció no marcada:sota el nostre control perquè puguem corregir el nostre codi.error:fora del nostre control. Per exemple, no podem fer res si es produeix VirtualMachineError o StackOverflowError.

Avantatge de la paraula clau Java llança

L'excepció ara seleccionada es pot propagar (enviada a la pila de trucades).

Proporciona informació a la persona que truca del mètode sobre l'excepció.

Exemple de llançaments de Java

Vegem l'exemple de la clàusula throws de Java que descriu que les excepcions marcades es poden propagar mitjançant la paraula clau 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...'); } } 
Prova-ho ara

Sortida:

 exception handled normal flow... 

Regla: si estem cridant a un mètode que declara una excepció, hem de detectar o declarar l'excepció.

Hi ha dos casos:

    Cas 1:Hem detectat l'excepció, és a dir, hem gestionat l'excepció mitjançant el bloc try/catch.Cas 2:Hem declarat l'excepció, és a dir, la paraula clau throws especificada amb el mètode.

Cas 1: gestionar l'excepció mitjançant el bloc try-catch

En cas que gestionem l'excepció, el codi s'executarà bé tant si es produeix una excepció durant el programa com si no.

usuaris de la llista mysql

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...'); } } 
Prova-ho ara

Sortida:

 exception handled normal flow... 

Cas 2: declarar l'excepció

  • En cas que declarem l'excepció, si no es produeix l'excepció, el codi s'executarà bé.
  • En cas que declarem l'excepció i es produeixi l'excepció, es llançarà en temps d'execució perquè llançaments no gestiona l'excepció.

Vegem exemples per a tots dos escenaris.

inicialització de primavera

A) Si no es produeix una excepció

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...'); } } 
Prova-ho ara

Sortida:

 device operation performed normal flow... 

B) Si es produeix una excepció

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...'); } } 
Prova-ho ara

Sortida:

paraula clau de llançament de Java

Diferència entre llançament i llançament

Feu clic a mi per obtenir més informació

Que) Podem tornar a llançar una excepció?

Sí, llançant la mateixa excepció al bloc catch.