【发布时间】:2013-11-29 12:53:36
【问题描述】:
我相信 java.lang.Exception 也是一个受检异常。但是java.lang.Exception 与任何其他受检异常(例如IOException or SQLException.)之间的行为存在差异
查看以下使用 Java 版本 7 编译的代码
try {
//empty try block
} catch (SQLException e) {
e.printStackTrace();
}
这会产生以下编译错误:-
java.lang.Error:未解决的编译问题: SQLException 的无法访问的 catch 块。 try 语句体永远不会抛出此异常
但是如果try块中没有语句,相同的代码不会给出任何编译错误:-
try {
// empty try block
} catch (Exception e) {
e.printStackTrace();
}
*结果:- 没有编译错误*
【问题讨论】: