Tecnología

Inicio

¿Cuáles son aserciones en Java?

Java añadió la palabra clave "aserción" para que sea más fácil de detectar e informar errores en Java 1.4. Las afirmaciones permiten al programa para especificar una condición que espera para ser verdad. En caso de que la condición de falla, el programa informa de un error que debe ser manejado.

la afirmación de sintaxis

La sintaxis de una aserción es muy simple:

valer CÓDIGO

El código debe evaluar como verdadera o falsa. Si es verdad, entonces el programa continúa como de costumbre. Si es falso, entonces un AssertionError es lanzada. De esta manera, la palabra clave afirmación permite a un programador para hacer afirmaciones sobre el estado del programa en puntos específicos e identificar momentos en que el programa pasa a estados que no están permitidos.

Cuándo utilizar aserciones

Las afirmaciones deben ser utilizados para comprobar invariantes, o situaciones que el programador cree que nunca se va a producir. El siguiente ejemplo de una afirmación sobre el estado de una moneda es un ejemplo de un invariante. Mediante el uso de afirmaciones para comprobar invariantes, los programadores de lograr dos cosas. En primer lugar, proporcionan un camino para que el programa falle si el invariante resulta ser falsa debido a la corrupción de memoria. En segundo lugar, proporcionan una forma claramente legible para el programador para mostrar otros programadores los supuestos que existen en su código.

Problemas

El problema central con afirmaciones se puede remontar al hecho de que son una característica opcional. Por una variedad de razones, las máquinas clientes pueden elegir para ejecutar el programa con las afirmaciones apagados. Esto tiene una serie de efectos. En primer lugar, el programador no puede poner cualquier código en el supuesto de que altera el estado del programa, ya que este código ya no se ejecuta si una afirmación falló. En segundo lugar, el programador no puede asumir que las afirmaciones serán evaluados. Esto significa que el argumento de la comprobación de los métodos aún debe llevarse a cabo utilizando el sistema de excepciones de edad, que nunca puede ser desactivado. Por último, puesto que una nueva palabra clave "afirman" ha sido añadido a la lengua, las variables en código antiguo puede no tener el nombre "afirman."

Ejemplo afirmación

Considere el siguiente código:

afirmar (con monedas == == JEFES || moneda COLAS);

Este afirma que variable llamada "moneda" debe ser igual a cualquiera de las "cabezas" o "colas". Si se mantiene algún otro valor, el programa está en un estado ilegal y se producirá el error de aserción.