Quelle est la différence entre lancer Vs. jette en Java

Publié: 2013-07-23

Quelle est la différence entre lancer Vs. jette en Java

L'un le déclare et l'autre le fait

Il existe cinq mots-clés liés à la gestion des exceptions en Java, par exemple try, catch, finally, throw et throws . Outre la différence entre final, finally et finalize , throw vs throws est l'une des questions d'entretien Java les plus fréquemment posées.

  • throw Le mot-clé est utilisé pour lancer une exception à partir de n'importe quelle méthode ou bloc statique en Java tandis que throws mot-clé , utilisé dans la déclaration de méthode, indique quelle exception peut être levée par cette méthode. Ils ne sont pas interchangeables.
  • Si une méthode lève une exception cochée comme indiqué dans l'exemple ci-dessous, l'appelant peut soit gérer cette exception en l'attrapant, soit la relancer en déclarant une autre clause throws dans la déclaration de méthode.
  • La clause Throw peut être utilisée dans n'importe quelle partie du code où vous pensez qu'une exception spécifique doit être levée à la méthode appelante.

Comprendre les exceptions Java :

Si une méthode lève une exception, elle doit soit être entourée d'un bloc try catch pour l'attraper, soit cette méthode doit avoir la clause throws dans sa signature. Sans la clause throws dans la signature, le compilateur Java JVM ne sait pas quoi faire de l'exception. La clause throws indique au compilateur que cette exception particulière sera gérée par la méthode appelante.

Vous trouverez ci-dessous un exemple très simple qui explique le comportement du bloc Throw, Throws, Try, Catch, Enfin en Java.

Résultat:

Exception de pointeur nul - Crunchify

Maintenant, remplacez simplement les lignes 45 et 46 par la ligne ci-dessous pour voir le résultat ci-dessous :

Nouveau résultat :

Liste de tous les tutoriels Java qui pourraient vous intéresser.

Conseils bonus sur les exceptions :

  • L'exécution normale du programme est immédiatement branchée lorsqu'une exception est levée.
  • Les exceptions cochées doivent être interceptées ou transmises. Cela peut être fait dans une instruction try … catch ou en définissant l'exception dans la définition de la méthode.
  • L'exception est interceptée par le premier bloc catch dont la classe d'exception associée correspond à la classe ou à une superclasse de l'exception levée.
  • Si aucun bloc catch correspondant n'est trouvé dans la chaîne d'exceptions, le thread contenant l'exception levée est terminé.
  • Le bloc finally après une instruction try … catch est exécuté, qu'une exception soit interceptée ou non.
  • Le retour dans un bloc finally rompt la chaîne d'exceptions vers l'invocateur, même pour les exceptions non interceptées.