异常andFile

本文介绍了Java中异常体系的基本概念,区分了编译时异常和运行时异常,详细讲解了JVM处理异常的默认方式以及如何使用try-catch捕获异常。还涉及了自定义异常的创建和构造函数的使用。
摘要由CSDN通过智能技术生成

异常体系的最上层父类是Exception,分为编译时异常和运行时异常。
编译时异常:没有继承RuntimeExcpetion的异常,直接继承于Exception,编译阶段会提示错误。
运行时异常:RuntimeException本身和子类,运行时提示错误。

1.JVM默认处理异常的方式:把异常信息输出在控制台,程序停止运行
2.捕获异常,当代码出现异常,运行不会停止。

int[] arr =  {1,2,3};
       try{
           //可能出现异常的代码
           System.out.println(arr[10]);
       }catch (ArrayIndexOutOfBoundsException e){
           //如果出现异常该如何处理
           
       }
       后面的代码

如果try没有遇到问题,代码直接执行后面的代码。
如果try中遇到多个问题,写多个catch与之对应,如果异常存在父子关系的话,父类一定要写在下面。

int[] arr =  {1,2,3};
       try{
           //可能出现异常的代码
           System.out.println(5/0);
           System.out.println(arr[10]);
       }catch (ArrayIndexOutOfBoundsException e){
           //如果出现异常该如何处理
           System.out.println(11111);
       }
        System.out.println(22222);

直接报错

int[] arr =  {1,2,3};
       try{
           //可能出现异常的代码
           System.out.println(arr[10]);
           System.out.println(5/0);
       }catch (ArrayIndexOutOfBoundsException e){
           //如果出现异常该如何处理
           System.out.println(11111);
       }
        System.out.println(22222);

执行第一个异常后直接到catch,不会执行除0异常

如果try中的问题没有被捕获,用JVM默认处理异常机制。
如果try中遇到了问题,try后面的其他代码不会执行,下面333333不会执行。

int[] arr =  {1,2,3};
       try{
           //可能出现异常的代码
           System.out.println(arr[10]);
           System.out.println(3333333);
       }catch (ArrayIndexOutOfBoundsException e){
           //如果出现异常该如何处理
           e.printStackTrace();
       }
        System.out.println(22222);

**

自定义异常

**
定义异常类
写继承关系
空参构造
带参构造

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值