El concepto de afirmación
Las afirmaciones se utilizan para probar y probar los supuestos de los programas, como "el valor aquí es mayor que 5".
Las afirmaciones se pueden eliminar por completo del código en tiempo de ejecución, por lo que no tienen ningún efecto en la velocidad de ejecución del código.
Uso de afirmaciones
Hay dos formas de afirmar:
Uno es afirmar << expresión boleana >>;
El otro es afirmar << Expresión de Bolean >>: << Descripción detallada >>.
Si el valor de la expresión booleana es falso, se lanzará una excepción de AfirmionError;
clase pública AfirmareMample {public static void main (string [] args) {int x = 10; / * Ignorar */}} System.out.println ("Prueba de afirmación de que x == 10"); :::::::::::::::::: para::: ::::::::::::::::::::::::::::::: ::::::::::::::
Dado que se introduce una nueva palabra clave, se deben agregar parámetros adicionales durante la compilación. Código:
Javac -Source 1.4 Afirrexample.java
El programa anterior debe usar parámetros adicionales (y se requiere un parámetro de línea de comando numérico) al ejecutar la función de afirmación, por ejemplo:
java -ea afirmarexample 1
La salida del programa es:
Prueba de la afirmación de que x == 10Exception en hilo "principal" java.lang.assertionError: nuestra afirmación falló en afirmación.
Dado que el parámetro de entrada no es igual a 10, la función de afirmación hace que el programa arroje un error de afirmación cuando se ejecute. Afirma que se usa el valor booleano, si su valor no es verdadero, se lanza un AfirmionError y se finaliza el programa.
Afirmar el uso recomendado
Utilizado para verificar la lógica interna en los métodos, que incluyen:
Nota: No se recomienda para verificar las condiciones previas dentro de los métodos públicos.
Afirmaciones de bloqueo de tiempo de ejecución
Para bloquear las afirmaciones durante el tiempo de ejecución, puede usar el siguiente método:
Para permitir afirmaciones al ejecutar Java DisableAsSertions o el nombre de la clase Java DA, puede usar el siguiente método:
Java EnablaseSertions o Java EA Nombre de clase