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

Класс RuntimeException

Класс RuntimeException является базовым классом для исключений, которые возникают во время выполнения программы. Такие исключения называются непроверяемыми (unchecked), потому что компилятор не требует их обработки. В первом параметре конструктор принимает сообщение об ошибке, во второй - причину возникновения исключения (другой объект Throwable). Класс RuntimeException наследуется от класса Exception.

Синтаксис

public class RuntimeException extends Exception

Конструкторы

Класс RuntimeException предоставляет несколько конструкторов:

RuntimeException() RuntimeException(String message) RuntimeException(String message, Throwable cause) RuntimeException(Throwable cause) RuntimeException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace)

Пример

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

public class Main { public static void main(String[] args) { try { throw new RuntimeException("Something went wrong"); } catch (RuntimeException e) { System.out.println(e.getMessage()); } } }

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

"Something went wrong"

Пример

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

public class Main { public static void main(String[] args) { try { int[] arr = new int[5]; int index = 10; if (index >= arr.length) { throw new RuntimeException("Invalid index", new IndexOutOfBoundsException()); } System.out.println(arr[index]); } catch (RuntimeException e) { System.out.println(e.getMessage()); System.out.println(e.getCause().getClass().getSimpleName()); } } }

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

"Invalid index" "IndexOutOfBoundsException"

Пример

Давайте перехватим несколько типов исключений, которые являются наследниками RuntimeException:

public class Main { public static void main(String[] args) { String[] tests = {"abc", null, "12345"}; for (String test : tests) { try { System.out.println(test.length()); } catch (NullPointerException e) { System.out.println("NullPointerException caught"); } catch (RuntimeException e) { System.out.println("RuntimeException caught"); } } } }

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

3 "NullPointerException caught" 5

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

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