Maison >Java >javaDidacticiel >Lancer un mot-clé en Java
Ce mot-clé Throw est largement utilisé dans le concept de gestion des exceptions. Comme son nom l'indique, le mot-clé throw consiste à lancer une exception du programme vers le compilateur. Le briefing sur l'exception est un type d'erreur qu'un compilateur supprime du programme en cas de divergence survenant pendant l'exécution du code. En utilisant ce mot-clé throw, nous pouvons définir notre exception en interprétant toute cause d'erreurs pendant l'exécution du programme.
Commencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
Voyons plus de détails ci-dessous :
Syntaxe
La syntaxe de throw en Java est la suivante :
throw exception_type ;
ou
throw instance;
Ici, nous pouvons vérifier comment le mot-clé est utilisé et comprendre comment fonctionne le flux à travers un exemple.
import java.util.Scanner; public class Main { public static void main(String[] args) { int c; Scanner sc = new Scanner(System.in); System.out.println("Enter value of A: "); int a = sc.nextInt(); //Scanner b = new Scanner(System.in); System.out.println("Enter value of B: "); int b = sc.nextInt(); try { c= a/b; if(b==0) { throw new ArithmeticException(); } System.out.println("Value of C is: " +c); } catch(ArithmeticException e) { System.out.println("Caught this here"); } finally { } System.out.println("Finally block is here"); } }
Traitons cela avec un exemple classique et simple de division par zéro.
Analyse du code ci-dessous :
Vérifions le résultat ci-dessous.
Sortie 1 : Si la valeur b n'est pas un zéro.
L'absence de blocs d'essai, de lancer et de capture exécutés est perceptible en raison de la valeur « B » non nulle. Au final, le bloc est exécuté quelle que soit la création de l'exception.
Sortie 2 : Si la valeur b est nulle.
La partie en surbrillance garantit que l'exception est lancée et interceptée avec succès par le bloc catch.
Voyons donc un exemple ci-dessous.
Exemple :
Voyons comment nous pouvons lancer plusieurs exceptions dans un seul programme.
public class Main { public static void main(String[] args) { String sun[] = {"chocolate", "honey", "sugar", "sweet", "bitter"}; String h = null; try { for (int i=0; i<=7; i++) { if(i > sun.length) { throw new ArrayIndexOutOfBoundsException(); } System.out.println(sun[i]); } } catch(ArrayIndexOutOfBoundsException ae) { System.out.println("Inside array index out of bounds exception catch block"); } try{ sun[0]=h; if (sun[0] == null) { throw new NullPointerException(); } System.out.println("Value of sun[0] is: " +sun[0]); } catch(NullPointerException f) { System.out.println("Caught Null point exception"); } finally { System.out.println("executing finally"); } } }
Ci-dessus, nous avons utilisé deux types différents d'exceptions et lancé des mots-clés pour interpréter le programme. L'index de tableau hors limite et l'exception de pointeur Null sont ce que nous avons utilisé ici dans un seul programme.
Sortie :
Ce mot-clé throw nous aiderait à servir de pont entre les blocs try et catch. Cela aidera à transférer le contrôle du programme du bloc try au bloc catch.
Laissez-moi vous montrer un exemple de la façon dont un programme fonctionne avec et sans utiliser le mot-clé throw.
public class Main { public static void main(String[] args) { try { int a = Integer.parseInt ("Happy") ; System.out.println("Will this get printed?"); } catch(NumberFormatException e) { System.out.println("Number format exception of catch block"); } System.out.println("Priting after catch block"); } }
Nous avons écrit du code sans le mot-clé throw. Mais nous avons utilisé le code pour essayer d'attraper le bloc, qui va gérer l'exception. Alors, connaissez-vous le résultat de ce qui précède ?
Attendu, n'est-ce pas ? Ainsi, il a exécuté le code, trouvé une exception et l'exception a été interceptée.
Maintenant, comment fonctionne le code lorsque nous insérons notre instruction throw ? Voyons ci-dessous.
public class Main { public static void main(String[] args) { try { int a = Integer.parseInt ("Happy") ; throw new NumberFormatException(); System.out.println("Will this get printed?"); } catch(NumberFormatException e) { System.out.println("Number format exception of catch block"); } System.out.println("Priting after catch block"); } }
Seule la partie en surbrillance correspond au changement entre les deux codes ci-dessus.
Sortie :
Oui, nous avons une erreur de compilation car l'instruction print après le mot-clé throw est inaccessible. Nous espérons que vous comprenez exactement ce que signifie « transférer le contrôle du bloc try to catch » à travers cet exemple.
À titre d'exercice, essayez de supprimer l'instruction print après avoir lancé le mot-clé et vérifiez comment le programme réagit.
C'est ainsi que la commande throw est entrée en scène au moment de la gestion des exceptions. Je remarque une bonne différence entre les mots-clés THROW et THROWS. Les deux sont utilisés avec le concept d’exceptions. Nous connaissons déjà le concept, comment et où utiliser le mot-clé « THROW ». Entraînez-vous simplement et essayez de l’utiliser de différentes manières. Continuez à apprendre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!