РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
707 of 1163 menu

Класс IllegalStateException

Класс IllegalStateException наследуется от RuntimeException и относится к непроверяемым исключениям. Он выбрасывается тогда, когда метод вызван в неподходящий момент, то есть объект находится не в том состоянии, в котором должен быть для корректного выполнения этого метода. Например, если попытаться вызвать метод у объекта, который ещё не был инициализирован или уже был закрыт. В конструктор можно передать сообщение с описанием причины ошибки, а также причину (другое исключение), которая привела к текущему.

Синтаксис

new IllegalStateException() new IllegalStateException(String message) new IllegalStateException(String message, Throwable cause) new IllegalStateException(Throwable cause)

Пример

Давайте создадим исключение IllegalStateException с сообщением и выведем его текст на экран:

public class Main { public static void main(String[] args) { IllegalStateException ex = new IllegalStateException("Object is not initialized"); System.out.println(ex.getMessage()); } }

Результат выполнения кода:

"Object is not initialized"

Пример

Давайте выбросим исключение IllegalStateException с помощью оператора throw и перехватим его:

public class Main { public static void main(String[] args) { try { throw new IllegalStateException("Invalid state"); } catch (IllegalStateException ex) { System.out.println(ex.getMessage()); } } }

Результат выполнения кода:

"Invalid state"

Пример

Давайте передадим в исключение причину его возникновения - другое исключение:

public class Main { public static void main(String[] args) { try { throw new IllegalStateException("Cannot process", new RuntimeException("Root cause")); } catch (IllegalStateException ex) { System.out.println(ex.getMessage()); System.out.println(ex.getCause().getMessage()); } } }

Результат выполнения кода:

"Cannot process" "Root cause"

Смотрите также

  • оператор throw,
    который выбрасывает исключение
  • конструкция try,
    которая содержит защищаемый код
  • конструкция catch,
    которая перехватывает исключение
  • класс RuntimeException,
    родитель класса IllegalStateException
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить