首页 > 代码库 > java学习第19天(异常)

java学习第19天(异常)

异常的体系
Throwable
|--Error 严重问题
|--Exception
|--RuntimeException 运行期异常,我们需要修正代码
|--非RuntimeException 编译期异常,必须处理的,否则程序编译不通过

try...catch...finally
try{

  可能出现的问题代码

}catch(异常名 变量){   //根据JDK7以后的新特性我们在处理时可以加入多个变量异常名(异常必须同级之间的)

    如何处理

}finally{

    释放资源

}

throws
把自己处理不了的,或者没有权限处理,在方法上声明,告诉调用者,这里有问题

在类后面直接throw 异常

需要注意的是在方法后面进行的异常抛出,如果是编译时期的异常我们在调用这个方法时时必须进行解决的,若是运行时期的异常我们可以不用管它。

throw 和throws区别

throw:
在方法体中,后面跟的是异常对象名,并且只能是一个
throw抛出的是一个异常对象,说明这里肯定有一个异常产生了
throws:
在方法声明上,后面跟的是异常的类名,可以是多个
throws是声明方法有异常,是一种可能性,这个异常并不一定会产生

finally

finally用于释放资源,它的代码永远会执行。特殊情况:在执行到finally之前jvm退出了

 

java学习第19天(异常)