jav*_*iry 2 c# exception try-catch throw c#-4.0
在throw;和之间选择的最佳做法是throw ex;什么?有没有?关于 - 例如 - 这个简单的片段:
try{
// some code
} catch (Exception ex) {
// some catcher code
// throw; ?
// or
// throw ex; ?
// how to decide which one?
}
Run Code Online (Sandbox Code Playgroud)
更新: 我知道上面的两个区别.问题是如何决定使用其中之一?有没有最好的做法来做出更好的选择?
您应该使用throw;重新抛出原始异常(使用原始堆栈跟踪)或者使用throw new MyException(..., ex);抛出您自己的异常,该异常可能提供其他信息并将内部异常设置为ex.
如果您没有任何其他信息,请使用 throw;
如果你只捕获异常进行清理,那么请try {...} finally {...}改用.
| 归档时间: |
|
| 查看次数: |
102 次 |
| 最近记录: |