1.明确什么是异常
运行时的异常都不会在代码标红线没有明确的try+catch,而受检查会标红线只能try+catch处理
Exception指的是主线程
锁定发生错误的位置,灰色的位置(别人写的)不是你的错误位置,是java的依赖库。蓝色是指着你报错的代码行数。
异常的体系结构
jvm运行时觉得不合理,是Jvm发现的错误通过中断程序告诉反馈出来。
反馈异常时会创造对象,这对象描述的信息就是错误的信息
异常的对象会类似返回的方式给到程序入口main方法。
处理异常
Exception:异常 Jvm认为程序猿可以处理的
Error:错误 Jvm认为程序员处理不了的
异常分:非受检异常 、受检异常
try+catch的处理流程
1.一旦产生异常,会自动产生一个异常类的实例化对象
2.如果异常发生在try语句中,会根据异常类型进入catch语句执行,如果没有try语句中,则将问题返回给调用者
3.所以的catch根据方法的参数匹配异常类实例化对象,如果匹配成功则表示catch执行操作处理
try+catch不是用来打印的,是来做补救的。
finally
//必然执行的异常统一处理出口
//无论是否发生异常,finally必然执行
格式