避免异常的出现,同时处理可能出现的异常,让代码更稳健。
- Throwable 是 Java 语言中所有错误与异常的超类。
- Error 类及其子类:程序中无法处理的错误,表示运行应用程序中出现了严重的错误。
- Exception 程序本身可以捕获并且可以处理的异常。Exception 这种异常又分为两类:运行时异常和编译时异常。
导图:
- 默认会在出现异常的代码那里自动的创建一个异常对象:ArithmeticException。
- 异常会从方法中出现的点抛出给调用者,调用者抛给JVM虚拟机。
- 虚拟机接收到异常对象后,先在控制台直接输出异常栈信息数据。
- 会从当前执行的异常点干掉当前程序。
- 后续代码不会执行了,因为程序已经死亡。
建议用Exception(范围大)
下面往往上抛,上面try catch
异常的申明(throws)
Java中,当前执行的语句一定是属于某个方法,Java解释器调用main方法执行开始执行程序。若方法中存在检查异常,如果不捕获,就应该在方法头中显式声明该异常,告知方法调用者这个方法有异常,应该处理。 在方法中声明一个异常,方法头中使用关键字throws,后面接上要声明的异常。若声明多个异常,要使用逗号分割。
异常的抛出(throw)
如果代码可能引发某种错误,可创建一个合适的异常类实例并抛出它。