El método getSuppressed() de la clase Throwable solía devolver una array que contenía todas las excepciones que se suprimieron para entregar esta excepción, por lo general, esta supresión se realiza mediante la instrucción try-with-resources. Para entregar Excepción Si no se suprimieron excepciones o la supresión está deshabilitada, se devuelve una array vacía de excepciones suprimidas. Cualquier cambio en la array devuelta no afecta las futuras llamadas a este método.
Sintaxis:
public final Throwable[] getSuppressed()
Parámetros: Este método no acepta nada como parámetro.
Devoluciones: este método devuelve una array que contiene todas las excepciones que se suprimieron.
Los siguientes programas ilustran el método getSuppressed() de la clase Throwable :
Ejemplo 1:
// Java program to demonstrate // the getSuppressed() Method. import java.io.*; class GFG { // Main Method public static void main(String[] args) throws Exception { try { testException1(); } catch (Throwable e) { // get StackTraceElements // using getStackTrace() Throwable[] suppExe = e.getSuppressed(); // print element of suppExe for (int i = 0; i < suppExe.length; i++) { System.out.println("Suppressed Exceptions:"); System.out.println(suppExe[i]); } } } // method which throws Exception public static void testException1() throws Exception { // creating a suppressed Exception Exception suppressed = new ArrayIndexOutOfBoundsException(); // creating a IOException object final IOException ioe = new IOException(); // adding suppressed Exception ioe.addSuppressed(suppressed); // throwing IOException throw ioe; } }
Suppressed Exceptions: java.lang.ArrayIndexOutOfBoundsException
Ejemplo 2:
// Java program to demonstrate // the getSuppressed() Method. import java.io.*; class GFG { // Main Method public static void main(String[] args) throws Exception { try { // add the numbers addPositiveNumbers(2, -1); } catch (Throwable e) { // get StackTraceElements // using getStackTrace() Throwable[] suppExe = e.getSuppressed(); // print element of stktrace System.out.println("Suppressed Exception Array" + " length = " + suppExe.length); } } // method which adds two positive number public static void addPositiveNumbers(int a, int b) throws Exception { // if Numbers are Positive // than add or throw Exception if (a < 0 || b < 0) { throw new Exception("Numbers are not Positive"); } else { System.out.println(a + b); } } }
Suppressed Exception Array length = 0
Referencias:
https://docs.oracle.com/javase/10/docs/api/java/lang/Throwable.html#getSuppressed()
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA