java异常体系、自定义异常

一、认识java异常
1. java异常是java程序运行过程中出现的非正常情况;
异常在程序中如果不做处理,会导致程序中途瘫痪,不能正常完成特定功能;
异常一般情况是需要通过java异常处理机制给屏蔽或者处理掉。
2. Java异常特点
Java异常处理是面向对象处理方式;
一旦代码出现异常问题,JVM底层则会创建一个异常类相关的对象;
异常对象产生后,会根据代码对异常的处理机制进行操作,其中异常处理机制包括捕获异常和抛出异常两种,如果没有异常操作,则java程序会中断执行。
3.Java异常体系继承结构图
这里写图片描述

二、异常处理机制
1.捕获异常
1.1
这里写图片描述
1.2异常捕获注意事项
①catch定义,由上到下,异常类的范围必须由小到大或者同级别的
运行时异常,catch中可以随意定义类型,程序运行时,会根据catch参数自动匹配
②非运行时异常,则catch中定义的异常,在try代码块中必须存在,如果没有类似异常存在,则不允许被定义。
finally关键字,在进行异常处理之后,在异常的处理格式中还有一个finally语句,此语句将作为异常的统一出口,不管是否产生异常, 最终都要执行此段代码
④如果try中有return语句,则会先执行return语句,后执行finally,最后返回整个方法
2.抛出异常
2.1这里写图片描述
2.2这里写图片描述
这里写图片描述
3.throw抛出异常对象
3.1 此操作主要是对当前产生的异常对象进行抛出操作,常用的处理格式是结合try…catch和throws一起使用。

public void test() throws 异常对象类型{
    try{
        //存在异常的代码块
    }catch(异常类型 变量名){
        throw 异常对象;
    }
}

3.2 throw异常对象注意
throw一般存在于catch语句当中,用于出现异常后的一种操作方式
捕捉的异常和抛出的异常不一定相同,可以不一样;
throw抛出的异常对象如果是检测异常,则所在的方法必须要通过throws显性抛出;
throw抛出的异常对象如果是非检测异常,则方法上可以选择性定义throws。
三、自定义异常
1.自定义异常一般是自己定义一个类来扩展Exception类
2.格式:public class 自定义异常类名 extends Exception{}
3.自定义异常一般适用于throw代码块抛出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值