一、在Throwable中有Error和Exception两个子类
1.Error:系统内部的错误或者资源耗尽(如磁盘内存不足),靠修改程序是不行的。这些我们都不管
2.Exception: RuntimeException 运行期异常,我们需要修正代码
非RuntimeException 编译期异常,必须处理的,否则程序编译不通过
二、几个关键字
1.try...catch:具体用法为
try{ //程序代码块 }catch(Exception e){ //对异常信息的处理 }
两个字不能单独出现必须放在一起
2.finally
A:finally用于释放资源,他的代码永远会执行。特殊情况遇到System.exit(0); jvm退出
B:如果在catch里面有return,请问finally还执行吗?如果执行,在return前还是后。
会,前。
3.throw和throws
throw:
在方法体中,后面跟的是异常对象名,并且只能是一个
throw抛出的是一个异常对象,说明这里肯定有一个异常产生了
throws:
在方法声明上,后面跟的是异常的类名,可以是多个
throws是声明方法有异常,是一种可能性,这个异常并不一定会产生