Cómo crear una excepción definida por el usuario en Java

Cómo crear una excepción definida por el usuario en Java
Un error de tiempo de ejecución que ocurre mientras se ejecuta un proceso es una excepción. El programa termina abruptamente cuando ocurre una excepción, y el código después de la línea que causó la excepción no se ejecutará. En Java, las clases de excepción como ArithmeticException y NullPointerException ya están definidas en el "Excepción" clase. Sin embargo, puede hacer una excepción definida por el usuario en Java y usar la palabra clave de lanzamiento con ellos.

Este manual enseñará el método para crear excepciones definidas por el usuario de Java.

Cómo crear una excepción definida por el usuario en Java?

En Java, puedes crear una excepción y lanzarla utilizando el "tirarPalabra clave. Las excepciones personalizadas o personalizadas son los nombres dados a estas excepciones.

Para crear una excepción definida por el usuario, primero, extenderá la clase con el "Excepción"Clase y luego use uno de los métodos mencionados a continuación:

  • método getMessage ()
  • método toString ()

Comprendamos ambos métodos para crear excepciones definidas por el usuario con ejemplos.

Método 1: Cree una excepción definida por el usuario en Java usando el método getMessage ()

En esta sección, usaremos un "getMessage ()"Método para lanzar una excepción con el"tirarPalabra clave. Pasaremos una cadena que se usa como una excepción al constructor de los padres "Excepción"Clase invocando el"súper()"Método en el presente constructor de clase.

Sintaxis

Siga la sintaxis dada para la excepción definida por el usuario:

obj.getMessage ();

Ejemplo 1

Primero, extenderemos nuestra clase al "Excepción"Clase, luego cree un constructor parametrizado que tome una cadena que se arrojará como una excepción. En el constructor del "Ejemplo"Clase, pasaremos el parámetro de tipo de cadena"s"Y llama al"súper()"Método con argumento"s"Eso se pasa a un constructor de la clase principal:

PublicExample (String S)

super (s);

En el método main (), primero crearemos un objeto de la clase y pasaremos una cadena como argumento porque la clase contiene un constructor parametrizado. Luego, arroje una excepción con el objeto de la clase. Estas operaciones se agregarán en un bloque de captura de try. A continuación, en el bloque Catch, llamaremos al método getMessage () para imprimir el mensaje pasado a la clase de excepción principal utilizando el método super ():

publicstaticvoidmain (string [] args)
intentar
Ejemplo ex = nuevo ejemplo ("entrada inválida");
tirar ex;
Catch (Ejemplo E)
Sistema.afuera.println ("Excepción atrapada");
Sistema.afuera.println (e.getMessage ());

Se lanza la excepción definida por el usuario:

No es obligatorio que pase una cadena a una clase principal utilizando el método super (), también puede crear una excepción definida por el usuario llamando al constructor de un padre sin pasar ningún parámetro.

Ejemplo 2

En este ejemplo, crearemos una excepción definida por el usuario sin imprimir ningún mensaje. Aquí, primero, crearemos un "UserDefinedException"Clase que se extiende al"Excepción" clase:

Clase UserDefinedException extiende la excepción

En el método main () del "EjemploClase, lanzaremos una excepción creando un nuevo objeto de la clase de excepción definida por el usuario. En el bloque Catch, llamaremos al método getMessage () para imprimir el mensaje; Sin embargo, no imprimirá ninguno porque no le pasaremos ningún mensaje:

publicClassexample
publicstaticvoidmain (string [] args)
intentar
thronewew userDefinedException ();
Catch (UserDefinedException UE)
Sistema.afuera.println ("Excepción atrapada");
Sistema.afuera.println (UE.getMessage ());


Producción

Veamos cómo podemos imprimir detalles de excepción en lugar de especificarlo en el constructor de la clase principal.

Método 2: Cree una excepción definida por el usuario utilizando el método toString ()

Si desea imprimir algunos detalles relacionados con la excepción, use el "Encadenar()" método.

Sintaxis

Use la sintaxis dada para imprimir el mensaje en la excepción definida por el usuario:

public String toString ()
return ("mensaje");

Ejemplo

Aquí, crearemos un método toString () en la clase de excepción definida por el usuario llamada "UserDefinedException"Al extenderlo con un"Excepción" clase. El método devolverá la cadena que se imprimirá:

classUserDefinedExceptionExtendSexception
public String toString ()
return ("se ocurre la excepción");

En el método main (), llamaremos a lanzar la excepción usando el "tirarPalabra clave creando un nuevo objeto de la clase definida por el usuario en un bloque de try:

publicClassexample
publicstaticvoidmain (string [] args)
intentar
thronewew userDefinedException ();
Catch (UserDefinedException UE)
Sistema.afuera.println ("Excepción atrapada");
Sistema.afuera.println (UE);


Producción

Hemos compilado todas las formas de crear una excepción definida por el usuario en Java.

Conclusión

Para crear una excepción definida por el usuario en Java, primero extenderá la clase a la clase de excepción, luego usará dos métodos, getMessage () y tostring () métodos. Estos métodos se utilizan para imprimir los mensajes como una excepción. El método getMessage () imprime el mensaje pasado al constructor de la clase principal, mientras que el método toString () devuelve la cadena que se utilizará como un mensaje de excepción. En este manual, explicamos los métodos para crear una excepción definida por el usuario de Java con ejemplos.