黑马程序员技术交流社区

标题: try可以同时捕获多个异常,但是只能处理一个,这样做意义何在? [打印本页]

作者: 左右.律    时间: 2016-9-12 23:13
标题: try可以同时捕获多个异常,但是只能处理一个,这样做意义何在?
题:
[Java] 纯文本查看 复制代码
try {
                        int[] arr = {1, 2, 3};
                        System.out.println(arr[3]);
                        arr = null;
                        System.out.println(arr.length);
                        System.out.println(1/0);
                } catch (NullPointerException e) {
                        System.out.println("处理第一个异常");            //只能处理一个异常
                } catch (ArrayIndexOutOfBoundsException e) {
                        System.out.println("处理第二个异常");
                } catch (ArithmeticException e) {
                        System.out.println("除了第三个异常");
                }

比如这个题,当第一个语句就捕捉到异常后,后面两条会出现异常的语句就执行不到了,这样不久隐藏了异常了吗?
作者: Jarc    时间: 2016-9-13 21:49
为什么要捕获异常?不就是为了修改代码。try catch 异常处理是程序员范的错误,throw是对象处理
作者: YSL450125    时间: 2016-9-13 23:53
这只是举例子,try ...catch解决的是需要程序员解决的问题,写程序过程中怎么可能出现这种错误,不要钻牛角尖




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2