异常机制(Day16)

异常机制

        概述

        异常时Java中一种识别及响应错误情况的一致性机制,有效的异常处理能使程序更加健壮,易于调试。

        

        异常的原因有很多,比如

        1.用户输入了非法数据

        2.要打开的文件不存在

        3.网络通信时连接中断

        4.JVM内存溢出

        5.程序错误

        6.物理错误 等等。

继承体系

Erroer 

        系统内部错误,这类错误由系统进行处理,程序本身无需捕获处理。 
        比如:OOM(内存溢出错误)、VirtualMachineError(虚拟机错误)、StackOverflowError(堆栈溢出错误)等,一般发生这种情况,JVM会选择终止程序。

 Esception

        概述

        Exception是所有异常类的父类。分为非RuntimeException和RuntimeException

        非RuntimeException异常

        指程序编译时需要捕获或处理的异常,如IOException、自定义异常等。属于checked异常。

        RuntimeException异常

        指程序编译时不需要捕获或处理的异常,如:NullPointerException等。属于unchecked异常。一般是由程序员粗心导致的。如空指针异常、数组越界、类型转换异常等。

        常用方法

        1.Try...catch...

        

Throws

        throws:抛出异常,并不会处理异常,如果最终没有出现try,依然会终止生命周期。它时一种提醒机制,告诉上家这里可能出现问题,并没有解决,需要注意

Finally

        finally : 必须执行的语句块 , 除了 System.exit() 关闭JVM虚拟机之外,finally一定会执行.一般用于做一些关闭资源操作。且finally不能单独使用,需要和try...catch...一起使用

自定义异常类

        语法

        继承一个已有的异常类,如果运行时异常则继承RuntimeException即可,否则一般直接继承Exception

        构造方法:一般需要一个无参构造,还需要一个有参构造用于传入错误信息

 

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值