Перейти к контенту

Цепочка исключений в Java

Когда одно исключение связано с другим, оно описывает причину этого исключения. Конструкторы класса Throwable поддерживают цепочные исключения в Java. Они заключаются в следующем —

Throwable(Throwable cause)
Throwable(String msg, Throwable cause)

У класса Throwable есть методы, которые поддерживают цепочку исключений —

 

MethodDescription
getCause()Возвращает исходную причину исключения
initCause(Throwable cause)Задает причину вызова исключения

Пример

public class Example {
   public static void main(String[] args) {
      try {
         // creating an exception
         ArithmeticException e = new ArithmeticException("Apparent cause");
         // set the cause of an exception
         e.initCause(new NullPointerException("Actual cause"));
         // throwing the exception
         throw e;
      } catch(ArithmeticException e) {
         // Getting the actual cause of the exception
         System.out.println(e.getCause());
      }
   }
}

Вывод

java.lang.NullPointerException: Actual cause

Оцени статью

Средняя оценка / 5. Количество голосов:

Спасибо, помогите другим - напишите комментарий, добавьте информации к статье.

Или поделись статьей

Видим, что вы не нашли ответ на свой вопрос.

Помогите улучшить статью.

 

Пока нет комментариев.

Добавить комментарий

Ваш e-mail не будет опубликован.

СайдбарКомментарии (0)