《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!
一、异常的基本概念
=========
-
异常事件改变程序流程;
-
当一个异常事件发生时,一个异常被抛出;
-
响应处理异常的代码被称为exception handler;
-
exception handler捕获异常;
-
异常处理能让你集中精力在一个地方解决问题,然后将处理错误的代码分开来放在另一个地方。
二、捕获异常
======
-
设置一个try/catch的代码块;
-
如果try块内的任何代码抛出了由catch子句指定的异常,则
a. 程序跳过try块中的其他代码;
b. 程序执行catch从句中的处理器代码。
-
如try块内没有抛出异常,直接跳过catch从句内容。
-
如try块内抛出的异常没有在catch从句中指定, 则该方法会立即退出。
三、处理异常
=======
1.如何控制try的范围:根据操作的连动性和相关性,如果前面的程序代码块抛出的错误影响了后面程序代码的运行,那么这个我们就说这两个程序代码存在关联,应该放在同一个try中。
对已经查出来的例外,有throw(消极)和try catch(积极)两种处理方法。
对于try catch放在能够很好地处理例外的位置(即放在具备对例外进行处理的能力的位置)。如果没有处理能力就继续上抛。
当我们自己定义一个例外类的时候必须使其继承excepiton或者RuntimeException。
- 对子类方法抛出的异常不能超出父类方法throws指令的范围。如父类方法不抛出任何异常,在子类方法中必须捕捉每一个“已检查异常”。
四、捕捉多个异常
========
-
每个异常类型使用一个catch从句;
-
如前面catch从句捕获异常,将直接跳过后面catch从句内容;
-
建议按异常类型的子类->超类的顺序排列catch从句的先后顺序。
五、finally 声明
============
无论是否捕获异常,都会执行finally从句中的代码;
例子:
finally{ con.close();}
六、 异常调用栈
========
-
哪个方法调用的代码发生异常,返回到调用方法的地方;
-
main方法调用的代码发生异常,返回到虚拟机。
七、 异常层次
=======
答:1) 起源于Error的类代表不常用的环境(通常是硬件层面);
-
应用程序不能够从Error中恢复正常;
-
所有的Java异常都起源于Exception;
-
RuntimeExcepiton也称为未检查异常;
-
未检查异常无须捕获;
-
其它异常,也称为检查异常,必须处理
Object
↑
Throwable
↑
|ˉˉˉˉˉˉˉˉ|
Error Exception
| ↑
分享
1、算法大厂——字节跳动面试题
2、2000页互联网Java面试题大全
3、高阶必备,算法学习
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!
试题大全**
[外链图片转存中…(img-4MKsddgr-1714444979428)]
3、高阶必备,算法学习
[外链图片转存中…(img-ubCXLHMI-1714444979428)]
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!