Исключения Java

В этом руководстве мы узнаем об исключениях в Java. Мы рассмотрим ошибки, исключения и различные типы исключений в Java.

Исключение - это непредвиденное событие, которое происходит во время выполнения программы. Это влияет на выполнение программных инструкций, что может привести к аварийному завершению программы.

Исключение может произойти по многим причинам. Некоторые из них:

  • Неверный ввод пользователя
  • Сбой устройства
  • Потеря сетевого подключения
  • Физические ограничения (нехватка дисковой памяти)
  • Ошибки кода
  • Открытие недоступного файла

Иерархия исключений Java

Вот упрощенная диаграмма иерархии исключений в Java.

Как видно из изображения выше, Throwableкласс является корневым классом в иерархии.

Обратите внимание, что иерархия делится на две ветви: Ошибка и Исключение.

Ошибки

Ошибки представляют собой неисправимые состояния, такие как нехватка памяти виртуальной машине Java (JVM), утечки памяти, ошибки переполнения стека, несовместимость библиотек, бесконечная рекурсия и т. Д.

Ошибки обычно не зависят от программиста, и мы не должны пытаться обрабатывать ошибки.

Исключения

Программа может перехватывать исключения и обрабатывать их.

Когда в методе возникает исключение, он создает объект. Этот объект называется объектом исключения.

Он содержит информацию об исключении, такую ​​как имя и описание исключения, а также состояние программы, когда возникло исключение.

Мы узнаем, как обрабатывать эти исключения в следующем руководстве. В этом руководстве мы сосредоточимся на различных типах исключений в Java.

Типы исключений Java

Иерархия исключений также имеет две ветви: RuntimeExceptionи IOException.

1. RuntimeException

Исключение во время выполнения происходит из - за ошибки программирования. Они также известны как неотмеченные исключения .

Эти исключения проверяются не во время компиляции, а во время выполнения. Вот некоторые из распространенных исключений времени выполнения:

  • Неправильное использование API - IllegalArgumentException
  • Доступ к нулевому указателю (отсутствует инициализация переменной) - NullPointerException
  • Доступ к массиву вне пределов - ArrayIndexOutOfBoundsException
  • Деление числа на 0 - ArithmeticException

Вы можете думать об этом так. «Если это исключение во время выполнения, это ваша вина».

Этого NullPointerExceptionбы не произошло, если бы вы проверили, инициализирована ли переменная перед ее использованием.

Этого ArrayIndexOutOfBoundsExceptionне произошло бы, если бы вы протестировали индекс массива относительно его границ.

2. IOException

IOExceptionТакже известно как проверяемое исключение . Они проверяются компилятором во время компиляции, и программисту предлагается обработать эти исключения.

Вот некоторые из примеров проверенных исключений:

  • Попытка открыть несуществующий файл приводит к FileNotFoundException
  • Попытка прочитать после конца файла

Теперь мы знаем об исключениях, мы узнаем об обработке исключений в следующем уроке.

Интересные статьи...