Я изучаю CSharp.I есть некоторые сомнения в обработке исключений.Индивидуально направьте меня, чтобы улучшить свои знания кодирования .catching exception-general сомнения
Пусть я построить сегмент кода:
try {
SomeWork();
return success;
}
catch (someException ex)
{
throw new ExceptionDetails(ex);
return failure;
}
catch(AnotherException exp)
{
throw new ExceptionDetails(exp);
return failure;
}
finally
{
CleanUpStuff();
}
Вопросы:
(1) Могу ли я использовать обратный оператор после "броска" (бросание исключение)?
(2) Является ли исключение уродливой практикой? Когда мне нужно просто выбросить исключение? Нужно ли мне использовать «бросок», чтобы сообщать только о специальном исключении?
(3)
try
{
SomeWork();
}
catch(StringIndexOutOfBound ex)
{
throw;
}
с помощью анонимного заявления вбрасывания в улове является хорошей практикой?
Что касается № 2, исключения должны использоваться для ** ошибки ** условий, не исключительных обстоятельств. –
Скотт, иногда вы достигаете ситуаций в своем коде, которые не являются технически ошибками, но являются нежелательными или безотзывными условиями. В этих случаях необходимо исключать исключения - они не являются ошибками, а являются обстоятельствами, которые являются исключением. Примеры: проверки проверки параметров, проверки нулей, проверки длины строк, проверки валидации кредитной карты. Это не технические ошибки - это просто обстоятельства, при которых вы не можете использовать код для исправления ситуации. – rein