Java异常

认识异常(Throwable)

异常代表程序中的问题。
如断网了,文件不存在了

分类

Error

系统的问题,不管

Exception

要管。

RuntimeException

运行时异常(编译不异常),如数组越界
数组越界时的代码报错,ArrayIndexOutOfBoundsException
public class ArrayIndexOutOfBoundsException extends IndexOutOfBoundsException
public class IndexOutOfBoundsException extends RuntimeException
数字操作异常
空指针异常

其他异常(编译时异常)

别人担心你代码出问题
提醒你注意,写代码时就会有
示例1
在这里插入图片描述

解决1:抛出

在这里插入图片描述
也可以直接抛出exception,代表所有异常
在这里插入图片描述

一类一类往上抛出,实际操作中按住alt加回车

alt键加回车选第二个,解决方法是checkit

try catch

show2中为示例代码
出现异常会被拦截。
在这里插入图片描述
也可以直接catch Exception,代表catch所有异常。(个人理解:有点父类的·感觉)
在这里插入图片描述

示例2
在这里插入图片描述
担心D盘没有这个文件

作用

定位程序bug的关键信息
作为方法内部的一种特殊返回值,以便调用上层者,方法的执行问题。
在这里插入图片描述
替代return

自定义异常

如果企业自己的某种问题,想通过异常来表示。

编译时异常

在这里插入图片描述
只要接收到这个就抛出
在这里插入图片描述
把它向上抛
在这里插入图片描述

运行时异常

在这里插入图片描述
快捷键:选中之后ctrl alt+t键,可以选try ,catch包围。
开发中一般使用运行时异常
在这里插入图片描述

处理方案

层层抛出

底层异常层层向外抛出,最外层捕获,记录异常信息,响应适合用户的信息观看。
在这里插入图片描述
在这里插入图片描述

捕获异常对象,尝试重新修复

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值