Maison  >  Article  >  Java  >  Assertion Java

Assertion Java

WBOY
WBOYoriginal
2024-08-30 16:05:04817parcourir

En Java, l'assertion est une instruction qui garantit ou teste l'exactitude des hypothèses formulées dans un programme. Cela se fait à l’aide de l’instruction assert. Lorsque l’hypothèse écrite est exécutée, elle est considérée comme vraie. S'il est faux, une erreur d'assertion sera générée par la machine virtuelle Java.

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Les principales raisons pour lesquelles les assertions sont utilisées sont :

  • Pour confirmer si un code inaccessible est joignable.
  • Pour vérifier si les hypothèses disponibles dans les commentaires sont correctes ou non.
  • Pour confirmer, la casse par défaut dans le switch n'est pas atteinte.
  • Après l'invocation d'une méthode.
  • Pour vérifier l'état d'un objet.

Syntaxe

Vous trouverez ci-dessous la syntaxe de l'instruction Java Assertion.

assert expression;
assert expr1 : expr2;

N'importe laquelle de ces syntaxes peut être utilisée en fonction des besoins.

Comment fonctionne l'assertion en Java ?

Comme déjà mentionné, l'assertion peut être écrite sous deux formes.

  • La syntaxe affirme l'expression ; est utilisé afin de tester les expressions de forme booléenne. Si l'expression particulière est fausse, le programme se termine en lançant une AssertionError. Contrairement aux exceptions normales, ces erreurs sont désactivées pendant l'exécution.
  • Cependant, la syntaxe affirme expr1 : expr2; il est utilisé dans les cas où le programme dispose d'informations supplémentaires qui permettent de diagnostiquer certaines pannes.
  • Semblables aux exceptions non interceptées en Java, les erreurs d'assertion sont généralement étiquetées dans la trace de pile avec le fichier ainsi que le numéro de ligne à partir duquel l'exception est levée.

Même si ce sont les principaux avantages de l'Assertion, il existe certaines situations dans lesquelles les Assertions ne doivent pas être utilisées. Ce sont :

  • Remplacement du message d'erreur.
  • Vérification des arguments dans les méthodes publiques
  • Arguments de ligne de commande.
Remarque :  Avant de compiler le code, assurez-vous que l'assertion est activée.

Syntaxe

java –ea programname

Ou

java –enable assertions programname

Étapes pour utiliser l'assertion Java Eclipse

Dans Eclipse, cela peut être fait en suivant les étapes ci-dessous.

Étape 1 : Sélectionnez Exécuter les configurations.

Assertion Java

Étape 2 : Allez dans le panneau de gauche et sélectionnez Application Java, puis faites un clic droit dessus.

Assertion Java

Étape 3 : Sélectionnez Nouvelle configuration et tapez –ea sur les arguments de la VM. Une fois que c'est fait, cliquez.

Assertion Java

De même, les assertions peuvent être désactivées en utilisant la syntaxe donnée ci-dessous. Java –da nom du programme

Exemples d'implémentation de l'assertion Java

Voyons maintenant quelques exemples de programmes pour l'assertion afin d'en avoir une idée claire.

Exemple n°1

Programme Java pour vérifier si une valeur particulière est supérieure à 20.

Code :

class AssertionExample{
public static void main( String args[] ){
int val = 14;
assert val>=20:" Value is not valid";
System.out.println("The given value is: "+ val);
}
}

Sortie :

  • Lors de l'exécution du code, le message « La valeur donnée est 14 » s'affiche.

Assertion Java

  • On voit clairement que l'assertion n'est pas vérifiée ici puisque la valeur supérieure à 20 n'est pas vérifiée.
  • Afin d'activer l'assertion, -ea doit être défini avant la compilation. Pour cela, effectuez les étapes mentionnées dans REMARQUE.
  • Si vous essayez à nouveau d'exécuter le code, vous verrez clairement qu'une AssertionError a été levée puisque la valeur est inférieure à 20.

Assertion Java

Exemple n°2

Programme Java pour vérifier si une valeur d'entrée utilisateur particulière est supérieure à 20.

Code :

import java.util.Scanner;
class AssertionExample{
public static void main( String args[] ){
Scanner <u>sc</u> = new Scanner( System.in );
System.out.print("Enter a number to check assertion ");
//store the input value to the variable <u>val</u>
int val = sc.nextInt();
//assertion check whether the input value is greater than 20
assert val>=20:" Value is not valid";
System.out.println("The given value is: "+ val);
}
}

Sortie :

  • L'utilisateur sera invité à saisir un numéro lors de l'exécution du code. Dans le résultat ci-dessous, le nombre 13 est donné en entrée. Puisqu'il est inférieur à 20, une AssertionError a été levée.

Assertion Java

  • En même temps, lorsqu'une valeur supérieure à 20 est donnée, aucune erreur n'est générée et le message s'affiche.

Assertion Java

Exemple #3

Programme Java pour vérifier le nombre de jours dans une semaine.

Code :

class AssertionExample {
//main method
public static void main(String args[]) {
//declare a string days
String[] days = {" Monday " , " Holiday " , " Saturday " , " Tuesday " , " Wednesday " , " Sunday " , " Thursday " , " Friday " };
//set the assertion as 7
assert days.length==7 : "7 days are present in a week, Your input is wrong";
//print the line below
System.out.println("There are " + days.length + "  days in a week");
}
}

Sortie :

  • Lors de l'exécution du code, une erreur d'assertion est générée car le nombre de jours dans une semaine est de 7 et la chaîne d'entrée donnée en contient plus.

Assertion Java

  • Supprimons Holiday des valeurs d'entrée et voyons quel sera le résultat.

Assertion Java

Oui. La ligne est imprimée lorsque la valeur d'assertion satisfait à la valeur d'entrée.

Avantages de l'utilisation d'Assertion en Java

Voici les principaux avantages de l'utilisation d'Assertion.

  • Détection et correction efficaces des bugs.
  • Le code passe-partout sera supprimé et aidera à créer un code lisible.
  • Le temps d'exécution ne sera pas affecté puisqu'il est automatiquement supprimé pendant l'exécution.
  • Détection et correction rapides des bugs.
  • L'optimisation et la refactorisation du code sont effectuées avec une grande confiance afin de fonctionner correctement.

En plus des points ci-dessus, vous trouverez ci-dessous les points importants à connaître lors de l'étude des assertions.

  • Une assertion en Java est introduite dans la version JDK 1.4
  • Assert est le mot-clé utilisé pour implémenter l'assertion.
  • L'activation et la désactivation de l'assertion peuvent être effectuées au moment de l'exécution à l'aide des syntaxes correspondantes.
  • Même si l'assertion complète l'exception, elle ne remplace pas l'exception.
  • Il ne remplace pas les tests unitaires même s'il aide à la validation des conditions.
  • N'utilisez jamais d'assertion pour la validation des arguments ou des paramètres d'une méthode publique.

Conclusion

Java Assertion est une déclaration qui vérifie la véracité d'une condition particulière. Il est couramment utilisé dans les tests lors du développement de logiciels. De plus, ils sont utilisés avec certaines expressions booléennes. Dans cet article, plusieurs aspects tels que la syntaxe, le fonctionnement, les avantages, les inconvénients et des exemples d'assertion sont expliqués en détail.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:URI Java.netArticle suivant:URI Java.net