Исключения Java
Исключения Java
В этом уроке мы узнаем об исключениях в Java. Мы рассмотрим ошибки, исключения и различные типы исключений в Java.
Исключение — это неожиданное событие, возникающее во время выполнения программы. Это влияет на поток программных инструкций, что может привести к аварийному завершению программы.
Исключение может возникнуть по многим причинам. Вот некоторые из них:
- Недопустимый пользовательский ввод
- Сбой устройства
- Потеря сетевого подключения
- Физические ограничения (недостаточно памяти на диске)
- Ошибки кода
- Открытие недоступного файла
Иерархия исключений Java
Вот упрощенная схема иерархии исключений в Java.
Как видно из изображения выше, Throwable
class является корневым классом в иерархии.
Обратите внимание, что иерархия делится на две ветви:ошибки и исключения.
<час>Ошибки
Ошибки представляют неустранимые состояния, такие как нехватка памяти для виртуальной машины Java (JVM), утечки памяти, ошибки переполнения стека, несовместимость библиотек, бесконечная рекурсия и т. д.
Ошибки обычно не зависят от программиста, и мы не должны пытаться обрабатывать ошибки.
<час>Исключения
Исключения могут быть перехвачены и обработаны программой.
Когда в методе возникает исключение, он создает объект. Этот объект называется объектом исключения.
Он содержит информацию об исключении, такую как имя и описание исключения, а также состояние программы при возникновении исключения.
Мы узнаем, как обрабатывать эти исключения в следующем уроке. В этом руководстве мы сосредоточимся на различных типах исключений в Java.
<час>Типы исключений Java
Иерархия исключений также имеет две ветви:RuntimeException
и IOException
.
1. Исключение во время выполнения
Исключение во время выполнения происходит из-за ошибки программирования. Их также называют непроверенными исключениями. .
Эти исключения проверяются не во время компиляции, а во время выполнения. Вот некоторые из распространенных исключений во время выполнения:
- Ненадлежащее использование API —
IllegalArgumentException
- Доступ к нулевому указателю (отсутствует инициализация переменной) —
NullPointerException
- Доступ к массиву за пределами границ —
ArrayIndexOutOfBoundsException
- Деление числа на 0 -
ArithmeticException
Вы можете думать об этом таким образом. «Если это исключение во время выполнения, это ваша вина».
NullPointerException
этого бы не произошло, если бы вы перед использованием проверили, была ли переменная инициализирована или нет.
ArrayIndexOutOfBoundsException
этого бы не произошло, если бы вы сравнивали индекс массива с границами массива.
2. IOException
IOException
также известен как проверенное исключение . Они проверяются компилятором во время компиляции, и программисту предлагается обработать эти исключения.
Вот некоторые примеры проверенных исключений:
- Попытка открыть несуществующий файл приводит к
FileNotFoundException
- Попытка чтения после конца файла
Теперь мы знаем об исключениях, мы узнаем об обработке исключений в следующем уроке.
java