Как достать подавленное исключение java
4 года назад
Человек-Молекула
Достать подавленное исключение можно с помощью метода getSuppressed(), который возвращает массив подавленных исключений.
getSuppressed()
import java.io.IOException; public class App { public static void main(String[ ] args) { try { func(); } catch (Exception e) { System.out.println(e); // => java.io.IOException Throwable[] suppressedExceptions = e.getSuppressed(); for (Throwable t : suppressedExceptions) { System.out.println(t); // => java.lang.ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 2 } } } // метод вызывает ArrayIndexOutOfBoundsException, а затем подавляет ее, выбрасывая IOException public static void func() throws Exception { Exception supressedExсeption = null; try { int[] arr = {1,2}; int n = arr[3]; } catch (Exception exception) { supressedExсeption = exception; throw exception; } finally { Exception newExсeption = new IOException(); if(supressedExсeption != null) { newExсeption.addSuppressed(supressedExсeption); } throw newExсeption; } } }
3 года назад
Сергей Якимович
Java-разработчик
Изучите Java и фреймворк Spring Boot и REST API
от 6 792 ₽
Посмотреть →
Spring Boot
Навык работы с Spring Boot для масштабируемых веб-приложений
от 3 900 ₽
Junit
Изучите code coverage, фикстуры, моки, работа с файлами
СИКП на Java
Изучите фундаментальные принципы программирования на Java
Fullstack-разработчик на Java
от 7 934 ₽
Полный список доступных курсов по разным направлениям
Похожие вопросы
Курсы по веб-разработке