java怎么捕获异常

互联网 19-11-28
在Java中,凡是可能抛出异常的语句,都可以用try ... catch捕获。把可能发生异常的语句放在try { ... }中,然后使用catch捕获对应的Exception及其子类。

多catch语句

可以使用多个catch语句,每个catch分别捕获对应的Exception及其子类。JVM在捕获到异常后,会从上到下匹配catch语句,匹配到某个catch后,执行catch代码块,然后不再继续匹配。 (推荐学习:java课程)

简单地说就是:多个catch语句只有一个能被执行。例如:

public static void main(String[] args) {    try {         process1();         process2();         process3();     } catch (IOException e) {         System.out.println(e);     } catch (NumberFormatException e) {         System.out.println(e);     } }

存在多个catch的时候,catch的顺序非常重要:子类必须写在前面。例如:

public static void main(String[] args) {     try {         process1();         process2();         process3();     } catch (IOException e) {         System.out.println("IO error");     } catch (UnsupportedEncodingException e) { // 永远捕获不到         System.out.println("Bad encoding");     } }

对于上面的代码,UnsupportedEncodingException异常是永远捕获不到的,因为它是IOException的子类。当抛出UnsupportedEncodingException异常时,会被catch (IOException e) { ... }捕获并执行。

因此,正确的写法是把子类放到前面:

public static void main(String[] args) {    try {         process1();         process2();         process3();     } catch (UnsupportedEncodingException e) {         System.out.println("Bad encoding");     } catch (IOException e) {         System.out.println("IO error");     } }

以上就是java怎么捕获异常的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: java
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:java常用类——Scanner

相关资讯