3
© Philippe GENOUD UJF Février 2004
5
Compilation/Activation
Par défaut le compilateur ne reconnaît pas l’instruction
assert
Avant version 1.4, assert n’était pas un mot réservé, assert a pu être
utilisé comme identificateur.
Pour compiler du code java utilisant les assertions
javac –source 1.4 MaClasseAvecAssertions.java
Dans les futures versions de Java, il se peut que assert soit reconnue par
défaut
Ne plus utiliser dès à présent assert comme identificateur
Par défaut les assertions ne sont pas testées à l’exécution
Les prédicats définis par les instructions assert étant supposés être
toujours vrais, il serait inefficace de les tester à chaque exécution
Elles peuvent être activées à tout moment pour tester du code,
diagnostiquer des erreurs, débuguer
© Philippe GENOUD UJF Février 2004
6
flags -ea (ou -eanableassertions) et -da (ou –disableassertions)
permettent de contrôler l’activation des assertions avec différents niveaux de
granularité
sans argument dans toutes les classes sauf les classes système
packageName... dans un package et ses sous packages
... dans le package sans nom dans le répertoire courant
className dans une classe
helix
types
Genome.class
modules
aligment carto pm
java –ea helix... –da helix.modules.carto... –da helix.types.Genome CartoUI
CartoUI.class
Les flags –esa (ou –enablesystemassertions)
et –desa (ou –disablesystemassertions)
permettent d’activer ou désactiver les assertions
pour les classes système.