Bootstrap

对Java中的Exception(异常)机制的详细总结(大全)

目录

1. Java中Exception的父子继承关系

2. 关于异常你必须要知道的知识

3. throws关键字的总结

4. 什么时间使用throws关键字抛出异常

5. try...catch处理异常的总结

6. try...catch...finally的介绍

7. final,finally,finalize()的区分

8. 异常信息的打印方式

9. 出现了异常信息,我们应该怎么处理

10. 如何自自定义一个异常

11. 一个异常的小知识

12.  关于一个异常的一个特殊的代码(有详细解释)


1. Java中Exception的父子继承关系

2. 关于异常你必须要知道的知识

  • 编写时异常Exception,又叫做编译时异常,受控异常,受检异常。
  • 所有的异常都是发生在运行阶段的。
  • 只要是异常发生了,程序就会报错。

3. throws关键字的总结

  1. 当编写代码的时候出现编写时异常,可以使用throws关键字处理异常,throws关键字是用在方法上面的,表示将异常向上抛,谁调用我,我就将异常抛给谁,可以一直抛。若是在main方法中还是向上抛异常,那么就会将异常抛给JVM(虚拟机),JVM就会报错。
  2. 使用throws处理异常,虽然看上去是异常解决了,但是这是一种不负责的做法,是在推卸责任,throws只是将异常转移调用你的人了,最终你仍旧需要解决
  3. throws抛异常的时候,是抛自己对应出现的异常,不能抛自己没有出现的异常。
  4. throws可以向上抛多个异常,使用,(逗号)隔开。

4. 什么时间使用throws关键字抛出异常

答:当想要让别人知道该方法使用的时候可能会出现异常,需要注意的时候,要使用throws提醒。

手写一个例子:帮你理解异常是谁调用我,就将异常抛给谁

 5. try...catch处理异常的总结

  1. 当出现编写时异常,我们还可以try,,,catch捕捉处理异常。
  2. main方法中的异常尽量要用try,,,catch处理,而不是继续往上抛。
  3. catch捕捉异常的时候,支持捕捉多个,但是建议精确catch,catch的范围按照从上到下,异常从小到大的顺序去捕捉,方便后期观察。
  4. JDK8开始,新特性支持,catch(ExceptionA | EeceptionB | ExceptionC  e){}的这种方式
  5. 若是运行代码的时候异常发生了,那么异常下面的方法就不会执行了。但是你要是使用try,,,catch的方式处理了异常,那么异常之后的语句仍旧正常执行。

6. try...catch...finally的介绍

下面以一个具体的案例进行理解

7. final,finally,finalize()的区分

8. 异常信息的打印方式

9. 出现了异常信息,我们应该怎么处理

答案:出现了异常信息,通常都是一大堆红色报错信息,我们不必紧张,只需要从上往下看就行,最上面的异常信息,就是你当前出现异常的最直接描述。

10. 如何自自定义一个异常

11. 一个异常的小知识

 12.  关于一个异常的一个特殊的代码(有详细解释)

 

;