Java: ООП
Теория: Ошибки
Иерархия исключений
Исключение в программировании - это событие, которое возникает во время выполнения программы и нарушает нормальный поток ее работы
Обработка исключений
В Java, обработка исключений может быть осуществлена двумя основными способами: либо обработать исключение непосредственно в месте его возникновения, либо пробросить его дальше, чтобы оно было обработано на более высоком уровне
Конструкция try-catch-finally
Синтаксис:
Пример обработки разных типов исключений:
Конструкция try-with-resource
Конструкция try with resources - это особый вид блоков try, который позволяет автоматически закрывать ресурсы, такие как файлы, сокеты или соединения с базой данных, после их использования. Это достигается за счет реализации интерфейса Closeable, который гарантирует, что ресурсы будут закрыты, даже если в блоке try возникнет исключение
Ключевое слово throws
В Java, ключевое слово throws используется для указания того, что метод может генерировать определенное исключение, которое не будет обработано внутри метода, а будет передано вызывающему коду. Это означает, что метод не будет обрабатывать исключение, а вместо этого сообщит о его возможности вызывающему коду, который должен будет его обработать или передать дальше
Генерация исключений
Часто в процессе разработки приходится генерировать (выбрасывать) исключения вручную. Например, при валидации входных данных пользователя. Для генерации исключения используется ключевое слово throw
Реализация собственных исключений
В Java, реализация собственных исключений позволяет разработчикам создавать пользовательские исключения, которые могут быть использованы для обработки конкретных ошибок или ситуаций в программе.
Для реализации собственного исключения необходимо создать класс, унаследованный от классов RuntimeException (непроверяемое исключение) или Exception (проверяемое исключение)



