Différence entre Throw et Throws

Quelle est la différence entre Throw et Throws en java ? –  Le mot clé Throw dans java est utilisé pour lancer une exception de manière explicite et il est principalement utilisé pour lancer une exception personnalisée. La clause Throws est utilisée pour déclarer une exception, ce qui signifie qu’elle fonctionne de manière similaire au bloc try-catch.
 
 

Définition de Throw

Lorsque on souhaite explicitement lancer une exception, on utilise le mot-clé throw. Le mot clé throw est suivi d’un objet de la classe d’exception qu’on souhaite lancer ici c’est ArithmeticException.

Par exemple:

throw new ArithmeticException("Arithmetic Exception");

 

Définition de Throws

Lorsqu’on ne veut pas gérer une ou plusieurs exceptions avec un bloc try-catch dans une méthode, on doit utiliser le mot clé throws dans sa signature comme ci-dessous.

// signature de la méthode
public void maMethod() throws IOException 
{
    ...
}
Différence entre Exception et Error en javaDifférence entre Exception et Error en javaQuelle est la différence entre Exception et Error en java ? – La classe java.lang.Error et java.lang.Exception les deux sont des sous-classes de la classe java.lang.Throwable,…Lire plus
Différences clés entre Throw et Throws
  • Le mot-clé throw est utilisé pour générer une exception explicitement à partir de n’importe quelle méthode ou d’un bloc statique, alors que le mot-clé throws est utilisé dans la déclaration de méthode, indiquant quelle exception peut être levée par cette méthode.
  • throw est suivi d’une instance alors que throws est suivi du nom de la classe d’exception.
  • throw est utilisé dans la méthode, tandis que throws est utilisé dans la signature du méthode.
  • Vous ne pouvez pas lancer plusieurs exceptions en utilisant throw, mais vous pouvez déclarer plusieurs exceptions en utilisant throws, par exemple.
public void method() throws IOException, SQLException{}
  • Le mot clé throws est utilisé pour créer une exception à propager explicitement à la méthode parent (méthode caller) mais lorsque nous utilisons le mot clé throw et lançons l’exception, il n’est pas nécessaire que cette exception soit propagée. Il peut se propager s’il s’agit d’une exception non contrôlée et qu’il ne peut pas se propager s’il s’agit d’une exception vérifiée.
  • le mot clé throws ne doit pas nécessairement être utilisé pour une exception non vérifiée afin de le propager à la méthode parent, car il peut être propagé par défaut, mais doit être utilisé pour gérer les exceptions dans la méthode parent. ne peut pas être propagé par défaut.
  • En utilisant le mot-clé throw, vous pouvez également casser une instruction switch ou une boucle sans utiliser le mot-clé break qui ne peut pas être exécuté à l’aide de throws, par exemple :
int number = 10;

switch(nbr){
   case 1:
       throw new RuntimeException("Exception number 1");
   case 2:
       throw new RuntimeException("Exception number 2");
 }
Questions piège en Programmation Orientée ObjetQuestions piège sur la Programmation Orientée Objet – JAVA – Partie 1Les questions pouvant être posées par des recruteurs sont nombreuses. Ce sont quelques-unes des questions les plus fréquemment posées. Prenez le temps de lire ces…Lire plus
Conclusion

Throw et Throws, les deux sont utilisées pour lancer des exceptions, la différence clé entre les deux, est que Throws est utilisé dans la signature d’une méthode pour spécifie au compilateur que la méthode peut générer une exception. L’instruction Throw utilisée pour lever une exception.
 
 

Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *