Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про C#: try, catch

Могут ли быть выполнены несколько блоков catch в одном программном блоке?

Этот вопрос проверяет понимание того, как работает обработка исключений в C# с использованием нескольких блоков catch.

Короткий ответ

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

Длинный ответ

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

Обработка исключений:

  • При возникновении исключения выполнение программы переходит в первый блок catch, который соответствует типу исключения.

  • Если исключение не соответствует первому блоку catch, проверяется следующий, и так далее.

Множественные блоки catch:

  • Можно использовать несколько блоков catch для обработки различных типов исключений.

Пример:

try
{
    	int[] numbers = new int[3];
    	numbers[5] = 10;  // Генерирует исключение IndexOutOfRangeException
}
catch (IndexOutOfRangeException ex)
{
    	Console.WriteLine("Ошибка индекса: " + ex.Message);
}
catch (Exception ex)
{
    	Console.WriteLine("Общее исключение: " + ex.Message);
}

В этом примере исключение IndexOutOfRangeException будет обработано первым блоком catch, и второй блок игнорируется.

Уровень

  • Рейтинг:

    1

  • Сложность:

    4

Навыки

  • C#

    C#

Ключевые слова

#try

#catch

Подпишись на C# Developer в телеграм