C# throw 抛出时阻止下面的catch继承这个错误
时间: 2023-07-05 19:25:04 浏览: 96
C#关于继承
在 C# 中,当使用 throw 语句抛出异常时,无论在何种情况下,只要抛出了异常,都会被传递到调用该方法的方法中,直到被某个方法捕获和处理为止。因此,throw 不会阻止下面的 catch 语句继承该异常。
但是,我们可以在 throw 语句后面加上 return 语句来阻止下面的 catch 语句继承该异常。具体做法是,在 throw 语句后面加上 return 关键字,例如:
```
throw new Exception("自定义总经理未获取到审批人,自定义角色报错!");
return;
```
这样,在执行 throw 语句后,会立即执行 return 语句,从而跳出当前方法,使下面的 catch 语句无法继承该异常。但是,这种做法并不是推荐的异常处理方式,因为它可能会导致程序出现未预期的行为,应该尽量避免使用。
阅读全文