El método getCause() de la clase Throwable es el método incorporado que se usa para devolver la causa de este throwable o nulo si no se puede determinar la causa de la excepción. Este método ayuda a obtener la causa proporcionada por uno de los constructores o que se estableció después de la creación con el método initCause (Throwable). Todos los métodos PrintStackTrace de la clase Throwable invocan el método getCause() para determinar la causa de Throwable o Exception. En términos simples, se puede decir que este método devuelve la causa por la cual ocurrió la excepción.
Sintaxis:
public Throwable getCause()
Valor devuelto: este método devuelve la causa de este Throwable o nulo si no se puede determinar la causa.
Los siguientes programas demuestran el método getCause() de Throwable Class:
Ejemplo 1:
// Java program to demonstrate // the ensureCapacity() Method. import java.io.*; class GFG { // Main Method public static void main(String[] args) throws Exception { try { // divide the numbers divide(2, 0); } catch (ArithmeticException e) { System.out.println("Cause of Exception: " + e.getCause()); } } // method which divides two number public static void divide(int a, int b) throws Exception { try { // divide two numbers int i = a / b; } catch (ArithmeticException e) { // initializing new Exception with cause ArithmeticException exe = new ArithmeticException(); exe.initCause(e); throw(exe); } } }
Cause of Exception: java.lang.ArithmeticException: / by zero
Ejemplo 2:
// Java program to demonstrate // the ensureCapacity() Method. import java.io.*; class GFG { // Main Method public static void main(String[] args) throws Exception { try { // divide the numbers divide(2, 0); } catch (ArithmeticException e) { System.out.println("Cause of Exception : " + e.getCause()); } } // method which divides two number public static void divide(int a, int b) throws Exception { // divide two numbers int i = a / b; } }
Cause of Exception : null
Referencias:
https://docs.oracle.com/javase/10/docs/api/java/lang/Throwable.html#getCause()
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA