异常
1.异常:程序执行过程中出现的影响程序正常运行的现象.
2.异常语法
try{
//代码块
}catch(异常类型 e){
//代码块
}catch(异常类型 2 e2){
//代码块
}...{
//代码块
}finally{
//代码块
}
注意:
try:表示可能出现异常的代码块.
catch:抓取异常,并进行处理,可以抓取多个异常,
异常的范围要从小到大抓取,并且只会执行第一个匹配的异常类型.
finally:最终的,不管是否出现异常,finally中的代码块始终会执行.
除虚拟机停止(System.exit(1))这种情况外.
注意:
finally 和 return的执行顺序:
先执行return,把返回结果保存在返回结果区域,并没有返回,再执行finally,
最后,把保存在结果区域的结果返回给调用者.
3.throws声明异常
a.就是当前方法,不能解决这个异常的时候,必须把这个异常交给上一个调用者去处理.
b.语法
访问修饰符 返回值类型 方法名(参数列表)[throws 异常]{}
Throwable
error: (出现不能通过的程序处理的错误)
Exception:可以同程序抓取或者抛出的错误.
检查异常(非运行时异常):编译阶段会出现的异常
SqlException,
IOException,
ClassNotFoundException
非检查异常(运行时异常RunTimeE)
NullPointerException,
ArrayIndexOfBoundsException,
ClassCastException,
注意:
checked异常,是必需处理的
运行时异常,可以不处理