您对如下代码有何看法:
public void doSomething()
{
try
{
// actual code goes here
}
catch (Exception ex)
{
throw;
}
}
我看到的问题是实际的错误没有得到处理,只是将异常抛出到不同的地方。我发现调试更困难,因为我没有得到实际问题所在的行号。
所以我的问题是为什么这会很好?
- - 编辑 - -
从答案来看,大多数人都说在没有捕获自定义或特定异常的情况下这样做是没有意义的。当没有捕获到特定的异常时,这就是我想要评论的内容。我可以看到实际用捕获的异常做某事的意义,只是不是像这段代码那样。
根据您所查看的质量,它不会将异常抛出到不同的地方。没有目标的“抛出”会重新抛出异常,这与抛出异常有很大不同。主要是重新抛出不会重置堆栈跟踪。
在这个特定的示例中,catch 毫无意义,因为它不执行任何操作。异常被愉快地重新抛出,几乎就像 try/catch 不存在一样。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)