try,catch,finally尝试(一个程序块多个catch)

2020-01-09 16:06:28来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

try,catch,finally尝试(一个程序块多个catch)


曾学过c++,但是对这些异常捕捉不是很了解,通过别的编程语言了解

public class newclass {

public static void main(String[] args) {
try {int [] arr=new int[5];
arr[1]=0;
//    arr[10]=1;
arr[0]=3;
int res=arr[0]/arr[1];
}
catch(ArrayIndexOutOfBoundsException ex2) {
System.out.println("2");

ex2.printStackTrace(); }
catch(ArithmeticException ex1){
System.out.println("1");

ex1.printStackTrace(); 

}
catch(Exception ex){ex.printStackTrace(); } 
finally{
System.out.println("不存在的");}

System.out.println("为什么急着");}

}

总结

一个程序块多个catch只会处理符合的那个,其他自定义的catch异常不会处理,而数组越界是编译器最早发现的,所以最早抛出错误,所以是2.

 


原文链接:https://www.cnblogs.com/otakus/p/12171808.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java自学-集合框架 聚合操作

下一篇:阿里巴巴的26款Java开源项目,赶紧戳…