¿Qué hace la palabra clave assert de Java y cuándo debe utilizarse?
¿Cuáles son algunos ejemplos de la vida real para entender el papel clave de las aserciones?
580
3
¿Cuáles son algunos ejemplos de la vida real para entender el papel clave de las aserciones?
Las aserciones (mediante la palabra clave assert) se añadieron en Java 1.4. Se utilizan para verificar la corrección de una invariante en el código. Nunca deben activarse en el código de producción, y son indicativos de un error o de un mal uso de una ruta de código. Pueden activarse en tiempo de ejecución mediante la opción
-ea
del comandojava
, pero no se activan por defecto.Un ejemplo:
Las aserciones se utilizan para comprobar las post-condiciones y "nunca deberían fallar" las pre-condiciones. El código correcto nunca debería fallar una aserción; cuando se activan, deberían indicar un error (con suerte, en un lugar cercano al lugar real del problema).
Un ejemplo de aserción podría ser comprobar que un grupo particular de métodos es llamado en el orden correcto (por ejemplo, que
hasNext()
es llamado antes denext()
en unIterator
).Un ejemplo del mundo real, de una clase Stack (de Assertion in Java Articles)