2011-03-23 3 views
2

je lis des assertions dans java.j'ai du matériel et j'avais déjà vu du matériel électronique sur des assertions.Mais je ne suis pas en mesure d'obtenir le thème principal pourquoi nous utilisons des assertions et ce qu'il fera.peut-on expliquer à moi dans les déclarations générales?Comment fonctionnent les assertions dans Java?

Répondre

3

En mots simples

Assertion est principalement utilisé dans des choses d'essai, où vous prétendez [assert: de déclarer ou déclare solennellement et formellement comme vrai; « Devant Dieu, je jure que je suis quelque chose d'innocent] si elle échoue, il jette AssertionError


En savoir plus

2

L'un des problèmes avec le débogage d'un programme est de découvrir qu'il y a un bug

En interne, vous pouvez vérifier l'état de toutes vos variables tout le temps, mais cela prendrait beaucoup de temps, mais sans de telles vérifications, votre état interne pourrait ne pas correspondre à ce que vous pensez être à un moment donné. boule de neige et écraser votre système dur plus tard.

Les assertions vous permettent de vous assurer que le programme est dans le bon état pendant le développement et échouent HARD si ce n'est pas le cas (avec un message raisonnable vous indiquant pourquoi). Dans le code de version, les instructions assert ne s'exécutent pas de sorte que vous ne ralentissez pas le système (plus, lorsqu'elles sont devant des utilisateurs réels, "Fail early, fail loudly" peut ne plus être la meilleure tactique en fonction de l'application

+0

peut vous donner plus d'explications au sujet de la phrase qui « affirment les déclarations n'exécutent pas que vous n'êtes pas ralentir le système quand ils sont en face des utilisateurs réels » – satheesh

+0

@satheesh Il y a une ligne de commande (Je crois -ea) pour permettre des assertions. Vous êtes censé utiliser cette option de ligne de commande pendant le développement, mais pas pendant le déploiement. Sans l'option, les assertions devraient être compilées au moment du chargement afin qu'elles n'existent pas. –