Видео по модулю
Подтемы
Подтемы
- иерархия исключений
- классификация исключений
- "устройство": message, cause, custom fields
- сцепленные исключения
- классификация исключений
- "устройство": message, cause, custom fields
- сцепленные исключения
- стратегии обработки ошибок
- try-with-resources (+ suppressed exceptions)
- multi-catch (+ more precise rethrow)
Стратегия создания классов исключений
1. Никогда не наследуйся напрямую от Throwable
2. Никогда не наследуйся напрямую от Error
3. Старайся не порождать экземпляры Error и его наследников
4. Старайся создавать свой корень (IOException, SQLException, ...)
5. Твой выбор #1: быть checked (наследник Exception) или unchecked (наследник RuntimeException)
6. Твой выбор #2: - корень монтировать под Exception/RuntimeException или их потомков
7. Твой выбор #3: - создать одно исключение или иерархию
8. Твой выбор #4: - кидать свое исключение или из JDK
Модуль исключений включает:
- синтаксис
- правила работы с try/catch/finally
- правила работы с checked исключениями и throws
- семантика
- наиболее часто используемые исключения
- стратегии обработки исключений
Модуль исключений НЕ включает:
- нововведения в Java 7
- try-with-resources
- mult-catch
- more precise rethrow
Плакаты
1. Иерархия (core + popular)
2. Popular in concrete situations
3. Enterprise practice - 4 different approaches
Материалы
Механика, устройство отдельного исключения, полиморфная обработка
- [Флэган. Сравочник] - 73-77
- [Шилдт. Руководство] - стр ?-?
Распространенные типы исключений JDK
- [Шилдт. Руководство] - стр 251-252
Обработка исключений в корпоративных проектах
- try-with-resources (+ suppressed exceptions)
- multi-catch (+ more precise rethrow)
Стратегия создания классов исключений
1. Никогда не наследуйся напрямую от Throwable
2. Никогда не наследуйся напрямую от Error
3. Старайся не порождать экземпляры Error и его наследников
4. Старайся создавать свой корень (IOException, SQLException, ...)
5. Твой выбор #1: быть checked (наследник Exception) или unchecked (наследник RuntimeException)
6. Твой выбор #2: - корень монтировать под Exception/RuntimeException или их потомков
7. Твой выбор #3: - создать одно исключение или иерархию
8. Твой выбор #4: - кидать свое исключение или из JDK
Модуль исключений включает:
- синтаксис
- правила работы с try/catch/finally
- правила работы с checked исключениями и throws
- семантика
- наиболее часто используемые исключения
- стратегии обработки исключений
Модуль исключений НЕ включает:
- нововведения в Java 7
- try-with-resources
- mult-catch
- more precise rethrow
Плакаты
1. Иерархия (core + popular)
2. Popular in concrete situations
3. Enterprise practice - 4 different approaches
Материалы
Механика, устройство отдельного исключения, полиморфная обработка
- [Флэган. Сравочник] - 73-77
- [Шилдт. Руководство] - стр ?-?
Распространенные типы исключений JDK
- [Шилдт. Руководство] - стр 251-252
Обработка исключений в корпоративных проектах