В этом репозитории я разбираю исключения в Java. Здесь будут собраны примеры с объяснениями,
чтобы запомнить, как обрабатывать ошибки и не бояться их.
| № | Файл | Что делает |
|---|---|---|
| 1 | ArithmeticException.md | Деление на ноль |
| 2 | ArrayIndexOutOfBoundsException.md | Выход за границы массива |
| 3 | NumberFormatException.md | Ошибка преобразования строки в число |
Постепенно буду добавлять примеры.
Исключение (Exception) — это событие, которое нарушает нормальное выполнение программы. Это не ошибка в коде, а непредвиденная ситуация (например, пользователь ввёл текст вместо числа, файл не найден, кончилось место на диске).
Java даёт инструменты, чтобы такие ситуации обрабатывать, а не падать с ошибкой.
Самый важный синтаксис для работы с исключениями:
try {
// код, который может вызвать исключениеintresult = 10 / 0;
} catch (ArithmeticExceptione) {
// что делать, если исключение случилосьSystem.out.println("На ноль делить нельзя!");
} finally {
// этот блок выполняется всегда (даже если ошибки не было)System.out.println("Программа завершила работу");
}| Блок | Когда выполняется |
|---|---|
try | Код, который может выбросить исключение |
catch | Только если исключение произошло |
finally | Всегда (закрытие файлов, подключений и т.д.) |
| Исключение | Когда возникает |
|---|---|
ArithmeticException | Деление на ноль |
ArrayIndexOutOfBoundsException | Индекс за пределами массива |
NullPointerException | Обращение к объекту = null |
NumberFormatException | Ошибка при преобразовании строки в число |
IllegalArgumentException | Передан неподходящий аргумент |
FileNotFoundException | Файл не найден |
IOException | Ошибка ввода-вывода |
ClassNotFoundException | Класс не найден |
| Тип | Что это | Нужно ли обрабатывать |
|---|---|---|
| Checked | Компилятор проверяет (например, IOException) | ✅ Да |
| Unchecked | Ошибки в логике кода (например, NullPointerException) | ❌ Не обязательно |
| Error | Серьёзные проблемы JVM (например, OutOfMemoryError) | ❌ Не обрабатываются |
- Понимание, что такое исключения
- Блоки
try-catch-finally - Обработка популярных исключений
- Разница между
throwиthrows
Это моя шпаргалка по исключениям. Когда программа падает с ошибкой, я открываю этот репозиторий и вспоминаю, как правильно обрабатывать такие случаи.
⭐ Исключения — это не страшно, если понимать, как с ними работать.