.Net допускает исключения любого класса, но C# ограничивает бросок и улов до исключения. Используйте предложение catch, которое не определяет ни тип, ни переменную для исключения исключений исключений.
Когда раздел задвижки определяет класс-тип, тип должен быть System.Exception, типом, который является производным от System.Exception или типа параметра типа, который имеет систему. Исключение (или его подкласс) в качестве его эффективного базового класса.
Когда предложение catch указывает как тип класса, так и идентификатор, объявляется переменная исключения данного имени и типа. Переменная исключения соответствует локальной переменной с областью действия, которая распространяется на блок catch. Во время выполнения блока catch исключающая переменная представляет собой исключение, которое в настоящее время обрабатывается. Для проверки определенного назначения переменная исключения считается определенно назначенной во всей своей области.
Если предложение catch не содержит имя переменной исключения, невозможно получить доступ к объекту исключения в блоке catch.
Предложение catch, которое не указывает ни тип исключения, ни имя переменной исключения, называется общим предложением catch. В заявлении try может быть только одно общее предложение catch, и если он присутствует, это должно быть последнее предложение catch.
Некоторые языки программирования могут поддерживать исключения, которые не могут быть представлены как объекты, происходящие из System.Exception, хотя такие исключения никогда не могут быть сгенерированы кодом C#. Для исключения таких исключений может быть использовано общее правило catch. Таким образом, общее предложение catch семантически отличается от того, которое указывает тип System.Exception, поскольку первое может также перехватывать исключения из других языков.
.Net 4.0 представляет концепцию, похожую на класс ошибок Java. В то время как Исправленные Исключения Исключения расширяют Исключение, используются только методы с HandleProcessCorruptedStateExceptionsAttribute.
@tieTYT Угадай, что люди думают о чем-то легком в поиске? – Daniel
@ Даниэль я вижу. Я не знал, что это преступление, способное сбивать вниз. –
Я не думаю, что этот вопрос не так плох, как предлагает голосование. У Java есть отдельный класс Throwable из класса 'Exception', который не является чем-то, что напрямую сопоставляется с C#.«Смотря вверх» то, что не существует, не всегда просто, особенно если вы ожидаете, что это будет где-то ... –