Clase de excepción

Exception Class

Primero, ¿qué es una excepción?

Una excepción es un problema que ocurre en tiempo de ejecución. Normalmente se describe como excepción.



En Java, la excepción se encapsula en una clase. Cuando ocurre un problema, se crea un objeto de clase de excepción y se lanza una información relacionada con la excepción (como detalles, nombre y ubicación de la excepción).



En segundo lugar, la relación de herencia anormal:



La clase Throwable es la superclase (la clase antecesora) de todas las clases de errores y excepciones.

Las clases de excepción de excepción y sus subclases se heredan de la clase Throwable, se utilizan para representar posibles excepciones en Java y manejar estas excepciones de forma razonable.

La clase RuntimeException es una clase de excepción de ejecución que hereda de la clase Exception. Él y sus subclases solo pueden existir durante la ejecución. Cuando aparecen, solo se puede modificar el código fuente. Esta excepción no se puede procesar.



La clase Error es una clase paralela a Exception y se utiliza para representar errores graves en Java. Solo se puede solucionar modificando el código.

Resumen del sistema de herencia:

|_+_|

En tercer lugar, la diferencia entre excepciones y errores:

Una excepción es una excepción que ocurre cuando se compila o ejecuta un programa. Podemos hacer algo con la excepción. Si no se maneja la excepción, el programa dejará de ejecutarse.

El error se refiere a un problema grave que se produce cuando el programa se está ejecutando. No se puede procesar y el programa dejará de ejecutarse. El error suele ser un problema a nivel del sistema. Es causado por el sistema jvm de la máquina virtual. Solo puede resolver el problema modificando el código fuente.

Cuarto, el proceso de producción anormal:

1. Genere una excepción al ejecutar o compilar

2. Crea un objeto de la clase de excepción

3. Declarar clases de excepción

4. Pase el objeto de clase de excepción al llamador (método main ())

5. La persona que llama no puede procesar y luego pasar el objeto de clase de excepción a la máquina virtual jvm.

La máquina virtual 6.jvm imprime la información de la clase de excepción (nombre, información detallada, ubicación de la excepción) en la pantalla y detiene la ejecución del programa.

Cinco, lanza un tiro de excepción

En Java, se proporciona una palabra clave throw para lanzar una excepción especificada.

Instrucciones:

1. Cree un objeto de excepción. Encapsula algunos consejos

2. Informar a la persona que llama acerca de esta excepción.

Formato de uso:

Lanzar un nuevo nombre de clase de excepción (parámetro)

Sexto, declarar lanzamientos anormales

Declarar formato de excepción:

Tipo de valor de retorno del modificador nombre del método (parámetro) arroja nombre de excepción 1, nombre de excepción 2

}

Siete, capturar intento anormal ... atrapar ... finalmente

Captura de excepciones: Java captura declaraciones específicas de excepciones y puede manejar las excepciones que ocurren de una manera específica.

Formato de declaración:
Copia el código

tratar {

|_+_|

}

Catch (variable de clase de excepción) {// parámetro.

|_+_|

}

finalmente {

|_+_|

}

Prueba: escribe código en el bloque de código que podría generar una excepción.

Captura: se utiliza para capturar ciertas excepciones y manejar las excepciones capturadas.

Finalmente: hay algún código específico que debe ejecutarse independientemente de si se produce una excepción o no. Además, debido a que la excepción provocará un salto en el programa, algunas sentencias no se ejecutarán. Finalmente, para resolver este problema, se ejecutará el código almacenado en el bloque de código.

La forma de capturar excepciones:

  1. Intente la combinación de captura finalmente: detecta una excepción y la pasa al controlador de captura, y finalmente libera el recurso.

  2. Pruebe la combinación de captura: detección de anomalías del código y pasar la excepción detectada al procesamiento de captura. Capture la excepción.

  3. Intente múltiples combinaciones de captura: detección de anomalías del código y transferencia de la excepción detectada al procesamiento de captura. Se realiza un procesamiento de captura diferente para cada información de excepción.

Nota: Este método de manejo de excepciones requiere que las excepciones en múltiples capturas no puedan ser iguales, y si hay excepciones subparentales entre múltiples excepciones en la captura, las excepciones de subclase deben procesarse en la captura anterior, y el padre es anormal. En el siguiente procesamiento de capturas.

  1. Intente finalmente la combinación: detección de excepción del código, después de detectar la excepción, debido a que no hay captura, será lanzado por el jvm predeterminado. La captura no maneja la excepción. Sin embargo, los recursos abiertos por la función deben cerrarse, todo finalmente. Solo para cerrar el recurso.

Ocho, excepción de tiempo de ejecución RuntimeExecption

Características:

Se lanza una excepción de tiempo de ejecución en el método, no se requiere una declaración throws en la definición del método y el llamador no necesita manejar esta excepción.

Una vez que se produce la excepción de tiempo de ejecución, el personal del programa debe modificar el código fuente.

Nueve, las excepciones en el método reescriben los detalles.

  1. Cuando una subclase anula un método de superclase, si la declaración del método de la clase principal es anormal, la subclase solo puede declarar la excepción de la clase principal o una subclase de la excepción, o no declarar.
|_+_|

2. Cuando un método de clase padre declara múltiples excepciones, solo se puede declarar un subconjunto de múltiples excepciones cuando se sobrescribe la clase secundaria.
Copia el código

|_+_|

3. Cuando el método que se reemplaza no tiene una declaración de excepción, la excepción no se puede declarar cuando se sobrescribe la subclase.

|_+_|

X. Métodos habituales en anomalías

En la clase Throwable, proporcionamos muchos métodos para manipular objetos de excepción. Los métodos más utilizados son los siguientes:

1. Método getMessage: devuelve la cadena de información detallada de la excepción, es decir, la información de solicitud de excepción

  1. Método toString: devuelve el nombre y la cadena de detalles de la excepción

  2. printStackTrace: muestra el nombre y la cadena de detalles de la excepción en la consola, la ubicación del código donde ocurre la excepción

Once, excepciones de clases personalizadas

formato:

|_+_|

Demostración de excepción de herencia de excepción personalizada:

|_+_|

La excepción personalizada hereda la demostración de RuntimeException:

|_+_|

Muestra

|_+_|