Clase de excepción Java Throwable VS
- 
          
            Introducción a la clase Throwableen Java
- 
          
            Introducción a la clase Excepciónen Java
- 
          
            Qué clase debemos usar, ThrowableoException
 
Este artículo nos enseñará cuándo usar las clases Throwable y Exception en Java. Ambas clases tienen sus constructores y métodos para manejar errores y excepciones.
Primero, veremos la introducción de Throwable y Exception de ambas clases, y después de eso, aprenderemos la diferencia entre ambos.
Introducción a la clase Throwable en Java
En la jerarquía de las clases java.lang, la clase Throwable es el padre o superclase de las clases Error y Exception. Significa que el Error y la Excepción son heredados por la clase Throwable en Java.
Concluye que la clase Throwable puede capturar todos los errores y excepciones producidos por la Máquina Virtual Java, ya sea errores de seguimiento de pila o excepciones de tiempo de ejecución o compilación.
Además, la clase Throwable implementa la interfaz Serializable en la biblioteca java.lang donde se define.
Los usuarios pueden ver la definición de la clase Throwable a continuación.
public class Throwable extends Object implements Serializable
En la definición de clase anterior, los usuarios pueden ver que la clase Throwable hereda la clase Object e implementa la interfaz Serializable.
Sintaxis de Throwable:
try {
  // some code
} catch (Throwable e) {
  // handle errors or exceptions
}
La clase Throwable contiene los constructores sobrecargados, que se explican a continuación.
Constructores
| Throwable() | Este constructor crea una nueva instancia de Throwablecon un mensaje de error predeterminado. | 
| Lanzable (Mensaje de error de cadena) | Este constructor crea una nueva instancia de Throwablecon un mensajeerrorMessage. | 
| Lanzable (Cadena de mensaje de error, Causa de error lanzable) | Este constructor también toma la causa del mensaje de error y crea una nueva instancia de ThrowableconerrorMessageyerrorCause. | 
| Lanzable(Causa del error arrojable) | Este constructor crea la nueva instancia de Throwablecon una causa específica pasada como parámetro. | 
Métodos
Aquí hemos explicado algunos métodos de la clase Throwable.
| toString() | Devuelve la descripción del error en formato de cadena. | 
| getMessage() | Devuelve el mensaje de error en formato de cadena. | 
| getCause() | Devuelve la causa de la instancia actual de un Throwable. | 
| getLocalizedMessage() | Devuelve la descripción localizada de Throwable. | 
| getStackTrace() | Proporciona información sobre el seguimiento de la pila. | 
| printStackTrace() | Imprime la instancia actual de Throwable. | 
| setStackTrace(StackTraceElement[] stackTrace) | Permite configurar el elemento de seguimiento de pila devuelto por el método getStackTrace(). | 
| initCause(Causa descartable) | Permite a los usuarios inicializar la causa del Lanzableactual. | 
errores
La clase Errores incluye errores que detienen la ejecución del programa.
| StackOverflowError | Ocurre cuando se produce un desbordamiento de pila o montón. | 
| AssertionError | Ocurre debido a una falla en la aserción. | 
| VirtualMachineError | Almacena en caché todos los errores en Java Virtual Machine. | 
| LinkageError | Ocurre debido a un problema de vinculación. | 
| OutOfMemoryError | Ocurre debido a poca memoria en su dispositivo o JVM se está quedando sin memoria. | 
Introducción a la clase Excepción en Java
En Java, las excepciones son eventos no deseados que ocurren en tiempo de ejecución o compilación. Las excepciones se pueden detectar en el momento de la compilación, denominadas excepciones comprobadas, y las excepciones solo se pueden detectar en el tiempo de ejecución, denominadas excepciones no comprobadas.
Sintaxis de Throwable:
try {
  // some code
} catch (Exception e) {
  // handle Exceptions only
}
Aquí, hemos definido algunos tipos de excepciones en Java.
| RuntimeException | Todas las clases de excepciones no verificadas lo heredan. | 
| NullPointerException | Ocurre debido a un valor nulo o indefinido. | 
| ArithmeticException | Ocurre debido a la falla de una operación aritmética. | 
| ArrayIndexOutOfBoundsException | Ocurre cuando intentamos acceder a un índice de matriz mayor que su longitud. | 
| NoSuchMethodException | Ocurre cuando el método no está definido. | 
| IOException | Ocurre debido a la falla de las operaciones de entrada/salida. | 
| ClassNotFoundException | Ocurre cuando la clase no está definida. | 
| SQLException | La falla de la operación de la base de datos es la causa de esta excepción. | 
Los programadores también pueden definir excepciones al heredar la clase Exception de Java.
Qué clase debemos usar, Throwable o Exception
Cuando observamos la sintaxis de las clases Throwable y Exception, parece similar a primera vista, ya que estamos usando ambas con el bloque try-catch.
La instancia de la clase Throwable puede atrapar los errores y las excepciones, ya que son una subclase de Throwable, pero la instancia de Exceptions solo puede atrapar las excepciones que ocurren en el programa.
En las aplicaciones Java normales, rara vez se producen errores como LinkageError, VirtualMachineError, OutOfMemoryError, etc. Principalmente se produce una excepción debido al error del usuario.
Por lo tanto, es una buena práctica usar la instancia de la clase Exception en lugar de la clase Throwable.
Artículo relacionado - Java Exception
- Arreglar Java.Net.SocketException: error de tubería rota en Java
- Comprender la excepción de tiempo de ejecución en Java
- Corrija la excepción Java.Net.BindException: la dirección ya está en uso: Bind
- El proceso de Java Gateway se cerró antes de enviar su número de puerto
- Excepción de entrada no válida en Java
