Введение в исключения в Java
Программа опирается на то, что данные и операции
ведут себя предсказуемо. На практике так бывает
не всегда: строка не превращается в число,
индекс выходит за границы списка, делитель
оказывается нулем, а ссылка указывает на
null. В таких случаях выполнение
запланированного шага теряет смысл или становится
невозможным.
Исключение - это сигнал среды выполнения Java о том, что операция не завершилась нормально. Если исключение не обработать, программа останавливается и выводит сообщение об ошибке. Обработка позволяет сообщить о проблеме, подставить безопасное значение или завершить только часть работы, не роняя всю программу.
Не каждая ошибка в данных - исключение в смысле
«авария». Если пользователь ввел некорректное
число, часто достаточно if и повторного
запроса. Исключения удобны там, где сбой
возникает глубоко в цепочке вызовов или когда
один и тот же участок кода должен пережить
разные сбои.
В Java для перехвата служит конструкция
try-catch. В следующих уроках разберем
перехват, типы исключений, блок finally
и явный выброс через throw. Собственные
классы исключений в этом учебнике не используются -
только стандартные типы платформы.