我想知道我对 Exception
的理解是否不正确。我有以下代码:
try
{
// ... code calls a function which throws a UASException()
}
catch (UASException ex)
{
throw;
}
catch (Exception ex)
{
throw new UASException("An unknown error has occured", ex);
}
现在,当我重新抛出
UASException
时,它被下面的 Catch
捕获了,这样做正确吗?我认为它应该返回到调用代码并重新抛出 UASException
。我可能错过了什么?
try
块中抛出的异常是UASException
,它将被重新抛出并且永远不会到达第二个 catch 块。如果您的经验不同,则很可能在代码中遇到了一些直接进入第二个 catch 块的不同异常。 - decPL