Mapa mental
Manejo de errores

Contenido del mapa
Manejo de errores
Excepcion
- Es un evento que altera el flujo normal de mensajes entre objetos.
- Permiten manejar los casos que salen del flujo principal de envío de mensajes dentro del método.
- Las excepciones no evitan el esfuerzo de detectar, reportar y manejar los errores, pero proveen las herramientas para realizar estas tareas fuera de la lógica principal y generalmente la cantidad de código necesario es menor.
Jerarquía de Excepciones
- Error
- Ninguna aplicación debería manejarlo, sólo aplica a fallas graves de la Máquina Virtual.
- Exception
- Volviendo a la definición de la página 1, una Exception es el evento genérico que altera el flujo normal de mensajes de la aplicación. Podemos contar entre las subclases a IOException, SQLException, TimeoutException, ClassNotFoundException.
- RuntimeException
- Es un caso particular que redefine el comportamiento estándar de Exception para que sean no chequeadas (en un rato veremos la diferencia entre excepciones chequeadas y no chequeadas). Ejemplos que subclasean a RuntimeException son: ClassCastException, EmptyStackException, IllegalArgumentException, y por supuesto, nuestra querida NullPointerException.
- Error
¿Qué sucede cuando un objeto recibe una excepción?
- 1. Si la excepción es no chequeada, podemos elegir no hacer nada y seguir trabajando como hasta ahora:
- El resultado es que el usuario recibe la notificación de la excepción junto con la pila de mensajes que se fueron enviando cada uno de los objetos (Stack Trace):
- El resultado es que el usuario recibe la notificación de la excepción junto con la pila de mensajes que se fueron enviando cada uno de los objetos (Stack Trace):
- 2. Puedo propagar la excepción hacia “arriba” (arriba sería al objeto que invocó el método sobre el cual estoy trabajando):
- Puedo tratar la excepción y actuar en consecuencia: En este caso el objeto está capacitado para manejarlo, y en consecuencia aplica el try/catch correspondiente.
- La idea es capturar una excepción específica del objeto al que nosotros conocemos, y propagar otro error más representativo, de más alto nivel . Esta estrategia se aplica especialmente cuando podemos dar un mejor nivel de información a quien recibe la excepción, en lugar de recibir el mensaje de error estándar poco representativo:
- 1. Si la excepción es no chequeada, podemos elegir no hacer nada y seguir trabajando como hasta ahora:
Excepciones de negocio y de programa
- Excepciones de programa
- Se producen cuando se ejecuta código de la aplicación y las puede analizar un especialista técnico (“falló el acceso a la base de datos”, “hubo división por cero”, “no pude castear este objeto a este tipo”, “el objeto no entiende este mensaje (NullPointerException)”, etc.)
- Excepciones de negocio
- Ocurren en el uso de la aplicación y son entendibles para el usuario final (“no hay saldo en la cuenta corriente”, “no hay stock del producto a facturar”, “no hay precio del producto a facturar”, etc.)
- La naturaleza de ambos tipos de excepción son diferentes: en general las excepciones de negocio (o de aplicación) requieren que el usuario corrija la información que quiere ingresar al sistema (y valorice el producto, o bien seleccione un producto alternativo para facturar, o trate de sacar plata de otra cuenta bancaria), en tanto que las excepciones de programa requieren una corrección por parte de un usuario técnico (que chequeará la conexión a la base de datos o bien corregirá el código que originó el error).
- Excepciones de programa
Imágenes y archivos del mapa
Información
- Descripción
- Mapa Mental sobre Manejo de errores, creado por Jose Jesus Padilla el 08/05/2017.
- Creado por
- Jose Jesus Padilla
- Visitas
- 0
- Valoración




