Обработка исключений или
исключительных ситуаций — механизм
языков программирования, предназначенный для обработки ошибок времени выполнения и других возможных проблем (
исключений), которые могут возникнуть при выполнении программы.
В целом, при возникновении исключительной ситуации, управление передаётся некоторому заранее определённому
обработчику. В некоторых языках, обработчик может возобновить выполнение программы с места возникновения исключения. Таким образом, обработка ошибок передаётся на более высокий уровень и обеспечивается возможность так называемого
нелокального выхода, т. е. передачи управления на некоторую «удалённую», возможно заранее неизвестную, точку программы через произвольное число вызовов функций.