Que devons-nous faire si le programme n'est pas prêt à gérer les erreurs en détectant les exceptions ? Nous pouvons résoudre ce problème avec des assertions .
Les instructions d'assertion sont très utiles pendant la phase de débogage du code et sont généralement utilisées pour les erreurs que le programme n'est pas prêt à gérer en interceptant les exceptions.
Par exemple : lorsqu'une erreur se produit, par exemple lorsqu'un compte est négocié et que le montant des dépenses est un nombre positif ou que le montant des revenus est un nombre négatif, le programme doit arrêter l'exécution immédiatement. Laissez l'instruction d'assertion fonctionner pendant la phase de débogage du code, afin que vous puissiez trouver des erreurs fatales lorsque le programme est officiellement exécuté, vous pouvez désactiver l'instruction d'assertion, tout en conservant l'instruction d'assertion dans le code source si l'application en a besoin. pour être débogué à nouveau à l'avenir, vous pouvez réactiver les instructions d'assertion.
Nous utilisons le mot-clé assert pour déclarer une instruction d'assertion. L'instruction d'assertion a les deux formats suivants :
assertbooleanExpression;//Une expression qui s'évalue en un type booléen assertbooleanExpression:messageException;//Une expression qui s'évalue en un type chaîne
Lorsque la valeur est vraie, l'exécution du programme continue à partir de l'instruction d'assertion.
Lorsque la valeur est fausse, l'exécution du programme s'arrête à l'instruction d'assertion.
Lorsque la valeur est vraie, l'exécution du programme continue à partir de l'instruction d'assertion.
Lorsque la valeur est fausse, le programme arrête l'exécution de l'instruction d'assertion et génère la valeur de l'expression messageException pour rappeler à l'utilisateur quel problème s'est produit.
Par exemple, pour une instruction d'assertion :
asserti>=0;
Si la valeur de l'expression i >= 0 est vraie, le programme continue l'exécution ; si la valeur de l'expression i >= 0 est fausse, le programme termine immédiatement l'exécution.
Lors de l'exécution de l'application directement à l'aide de l'interpréteur Java, les instructions d'assertion sont désactivées par défaut. Vous pouvez utiliser -ea pour activer les instructions d'assertion lors du débogage du programme, par exemple :
java-eamainclass
Par exemple:
publicclassMain{publicstaticvoidmain(String[]args){int[]score={-120,98,96,94,92};intsum=0;for(intnumber:score){//Utiliser pour parcourir le tableau assertnumber>= 0 : les nombres négatifs ne peuvent pas être des notes ; sum=sum+number;}System.out.println(total score:+sum);}}
Les résultats en cours d'exécution sont les suivants :
Note totale : 260