Цепочка исключений

редактировать

Цепочка исключений или обертывание исключений, является объектом ориентированное программирование метод обработки исключений путем повторной генерации пойманного исключения после его помещения в новое исключение. Исходное исключение сохраняется как свойство (например, причина) нового исключения. Идея состоит в том, что метод должен генерировать исключения, определенные на том же уровне абстракции, что и сам метод, но без отбрасывания информации с нижних уровней.

Например, метод воспроизведения файла фильма может обрабатывать исключения при чтении файла, повторно бросая их в исключение воспроизведения фильма. Пользовательскому интерфейсу не нужно знать, произошла ли ошибка при чтении блока байтов или вызове eof (). Ему нужно только сообщение об исключении, извлеченное из причины. Уровень пользовательского интерфейса будет иметь свой собственный набор исключений. Тот, кого интересует причина, может увидеть трассировку своего стека во время отладки или в собственном журнале.

Выбрасывание исключений правильного типа обеспечивается, в частности, проверенными исключениями в языке программирования Java, а начиная с версии 1.4 почти все исключения поддерживают цепочку.

В средах среды выполнения, таких как Java или.NET, существуют инструменты, которые подключаются к механизму выполнения, и каждый раз, когда возникает интересующее исключение, они записывают отладочную информацию, которая существовала в памяти на момент создания исключения ( значения стека и кучи). Эти инструменты называются перехватом исключений, и они предоставляют информацию об «основной причине» исключений в программах Java, которые выполняются в производственных средах, средах тестирования или разработки.

Ссылки

Последняя правка сделана 2021-05-19 09:29:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте