在Java中,所有异常都来自一个祖先Java.lang包中的Throwable类。
Throwable有两个重要子类:Error(错误)、Exception(异常)
Error:表示程序中比较严重的问题,大多数与代码的编写者执行的操作无关,而表示虚拟机有问题,比如Virtual MachineError。发生在虚拟机自身或者发生在虚拟机试图执行的应用时。这些错误是不可查的,在应用程序控制和处理之外。
Exception:有个重要子类RuntimeException(运行时异常),由虚拟机抛出异常,比如NullPointerException(要访问的变量没有引用任何对象),ArithmeticException(算术运算符,整除0),ArrayIndexOutOfBoundsException(下标越界)
区别:异常能被程序本身处理,错误无法处理
Throwable类常用的方法:
异常处理总结:
以下4中模块,finally不会被执行:
原文:https://www.cnblogs.com/codingLiu/p/12686145.html