假设我不打算使用变量ex并且我需要处理任何错误。
try
{
...
}
catch(Exception ex)
{
return;
}
在这种情况下是否有必要声明一个变量ex?
或者你可以这样做:
try
{
...
}
catch(Exception)
{
return;
}
或者通常是这样的:
try
{
...
}
catch
{
return;
}
有什么区别,哪个更好?
假设我不打算使用变量ex并且我需要处理任何错误。
try
{
...
}
catch(Exception ex)
{
return;
}
在这种情况下是否有必要声明一个变量ex?
或者你可以这样做:
try
{
...
}
catch(Exception)
{
return;
}
或者通常是这样的:
try
{
...
}
catch
{
return;
}
有什么区别,哪个更好?
如果计划在将来使用某个变量,则必须对其进行声明。如果只有拦截这一事实很重要,那么只指定类型就足够了。如果您需要捕获不符合 CLS 的异常,则in
catch(Exception)和 empty的区别很有用。您可以在msdncatch上阅读更多相关信息。该链接仅表明它在此代码中有意义:随着异常的增加,也可以一个接一个地排列异常。如果
error它没有陷入任何异常,那么它肯定会陷入catch (Exception ex)如下示例所示。finally块在任何条件下执行。如果您想捕获任何异常并且上下文不重要,请编写:
如果异常类型很重要,那么:
但是如果逻辑也与异常类中的数据相关联,那么相应地:
1)我们捕获特定类型的异常并将其存储在变量中。
可以在块中分析变量,例如尝试恢复正确的程序流程
2)我们捕获了特定类型的异常,但我们不分析异常本身
3)我不确定,但很可能绝对捕获了所有异常。
PS 由于所有异常都是从Exception 继承的,所以第二个和第三个例子是相似的。