Исключения Exception и их обработка - что это в Программировании
Primary tabs
Forums:
Исключения - механизм в ряде языков программирования, который позволяет останавливать работу программы в месте броска исключения.
Далее обычно происходит следующее:
- "Раскрутка" стэка вызовов функций вплоть до момента, пока исключение не перехватят (в обработчике)
- Если обработчик для данной исключительной ситуации не найден - программа "падает" (экстеренно завершается)
В си-подобрых языках это может выглядет так (php):
try {
$file = fopen('nonexistent.txt', 'r');
if (!$file) {
// сами бросаем исключение, если не смогли открыть
throw new Exception('Не удалось открыть файл');
}
// Работа с файлом
fclose($file);
// Перехватываем исключение, извлекаем текст ошибки
} catch (Exception $e) {
echo 'Ошибка: ' . $e->getMessage() . PHP_EOL;
}
-- таким образом, исключения могут являеться одним из способов управления порядоком выполнения программы/
"Исключения" в golang
В golang имеется механизм восстановления после паник, но его не рекомендуется использовать для порядка выполнения, а только чтобы сохранить саму программу "на плаву".
- Log in to post comments
- 37 reads