В статье мы создавали блоки try, которые отлавливали все возможные исключительные ситуации, и даже не пытались узнать, что именно произошло. А ведь если в блоке try достаточно много кода, то не всегда можно догадаться, какой тип ошибки реально произошел.
Для работы с ошибками в Delphi есть класс Exception. Это базовый класс для всех объектов исключений. Обратите внимание, что это класс, но начинается он не с буквы "Т". Все классы, которые мы рассматривали, начинались с буквы "Т", да и в самом конце разд. 42 мы говорили, что в Delphi имена всех классов начинаются именно с этой буквы.

Теперь пора познакомиться с исключительными ситуациями. Для чего они нужны? Допустим, что у вас есть участок кода, где может произойти ошибка. Как сделать так, чтобы программа не зависла при ее возникновении? Очень просто — нужно сделать все, чтобы ошибка не возникла. Да, это действительно так. Первым делом, когда пишете код, вы должны делать все, чтобы исключительные ситуации не возникали, а для этого нужно проверять все переменные, параметры и результаты работы функций. Исключительные ситуации — это не панацея, решающая все проблемы, это всего лишь вспомогательный инструмент.