A在没有被捕获的情况下被RuntimeException
抛出,而子句调用.try
finally
System.exit()
public static void main(String[] args) {
try {
Integer.valueOf("NotANumber");
} finally {
System.out.println("finally");
System.exit(0);
}
}
输出是
finally
如果System.exit(0)
从 finally 中删除,则输出为
finally
Exception in thread "main" java.lang.NumberFormatException: For input string: "NotANumber"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:449)
at java.lang.Integer.valueOf(Integer.java:554)
at exception.MyExcepTest.main(MyExcepTest.java:20)
“finally”可能出现在. 的消息之前、之后或之间NumberFormatException
。
谁能解释一下?