快速提问。当然,堆栈跟踪提供了更多信息,但在某些情况下使用异常本身是一种不好的做法吗?就像只是得到“空指针异常”而不是这个巨大的转储内容?如果这没有任何意义,那么两个区别将是:
(Exception e)
{
print e
}
AND
(Exception e)
{
e.printStackTrace
}
最佳答案
我会说在生产中不要使用它们。您应该以其他方式处理异常,例如记录异常或将堆栈跟踪保存在某处以便稍后查看,并且可能向用户显示一条友好的消息,说明应用程序或方法失败。
但是,如果您只是询问使用哪种方法,我会说后者更好,因为 System.out.println(e)
将调用 Throwable#toString
> 只提供了此异常的消息,也许你无法得到问题的真正原因。
关于java - 打印堆栈跟踪与异常本身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33586700/