Cómo implementar una clase de excepción en java

El manejo de errores es una parte importante cuando estamos creando programas de cualquier tipo y en cualquier lenguaje. Java tiene una gran variedad de opciones para manejar errores, pero a veces es necesario crear nuestras propias excepciones para manejar errores que son propios de nuestra aplicación y que por ende, nadie más ha implementado.

En este post tomamos como ejemplo una clase que hace varias operaciones aritméticas, pero tenemos las siguientes reglas del negocio:

  • Solo se pueden sumar y multiplicar números positivos
  • No se puede dividir dentro de 0

Entonces vamos a crear 2 excepciones “personalizadas” para cumplir con esta lógica. Digamos que tenemos la implementación básica de la clase Aritmética.

Esta clase no es exactamente lo que buscamos, vamos a crear 2 clases de excepción muy sencillas que se van a llamar:

  • ExcepcionNumeroNegativo
  • ExcepcionDivisionPorCero

Los pongo en español para mayor entendimiento, pero la convención de la industria sería que estuvieran en ingles (NegativeNumberException, DivideByZeroException).

 

Estas son excepciones custom que heredan todo de la excepción básica Exception por defecto que viene en java, que a su vez hereda cosas de la clase Throwable por lo tanto nuestras excepciones ya son del tipo base Excepción y tienen la capacidad de ser “arrojadas”.

Con esto vamos a modificar un poco nuestra primera clase Aritmética y le vamos a agregar el manejo de errores de acuerdo a las reglas del negocio que interesan únicamente a ella.

La clase queda asi:

Entonces para comprobar que todo funciona bien, agregamos una clase Main al proyecto que luce así:

Compilamos corriendo el siguiente comando:

Se generan los binarios y corremos el programa:

Si todo se logró perfectamente, obtendremos el siguiente output en la terminal:

Y ahí lo tienen! un manejo de errores de calidad mundial!

Si gustan descargar el código del ejercicio está disponible a través de este enlace

Y ahora… manos al código, recuerden que una aplicación con errores bien manejados es una aplicación de clase mundial.

Loading Comments…
more
Allowed HTML tags and attributes: <a href="" title=""> <blockquote> <code> <em> <strong>