
Объектно-ориентированное программирование
.pdfСтраница 51 из 51 |
Основные принципы ООП |
исключения, строка сообщения, значения операндов невыполненной операции,
адрес некорректных данных и т.д.
Затем осуществляется обратный просмотр стека вызовов подпрограмм вплоть до основной программы и поиск ближайшего фрагмента,
предусматривающего действия по обработке исключений. При этом возможны три варианта:
фрагмент, предусматривающий обработку исключений требуемого типа не обнаружен - выполняется аварийное завершение программы с выдачей предусмотренной по умолчанию информации;
обнаружен фрагмент, включающий обрабатывающую конструкцию -
исключение корректируется, и выполнение программы продолжается;
обнаружен фрагмент, включающий завершающую конструкцию -
выполняются операторы завершающей обработки и программа продолжается с операторов, следующих за блоком завершения.
Большое внимание при программировании обработки исключений уделяется работе с типами исключений. Наибольший интерес представляет объявление иерархии классов исключений, что позволяет перехватывать сразу все исключения типов иерархии обработчиком типа указатель (ссылка) на базовый класс. В процессе обработки таких иерархий исключений обычно используют динамические полиморфные методы, вызов которых происходит в соответствии с реальным типом (классом) исключения, определяемым на этапе выполнения программы.