我有以下代码行来捕获异常。
catch (Throwable ex) {
//print stack trace
}
和
catch (Exception ex) {
//print stack trace
}
在上面两个catch块之间,推荐哪一个?
谢谢!
答案 0 :(得分:3)
始终建议捕捉Exception
,因为Throwable
也会抓住Errors
。
通常Errors
是致命的,你不应该继续。
答案 1 :(得分:0)
Exception
是Throwable
的子类。
Error
和Exception
是Throwable的2个子类。正如建议的错误导致致命的东西(因此不应该被handeled)。而Exception是程序化问题,应由开发人员处理。因此catch(Exception e)
是正确的。希望我明白我的观点。