目录

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. 关于一个异常的一个特殊的代码(有详细解释)