标签:
1、什么是异常
简单来说,就是由于程序运行是出现的问题,但是可以通过try…和catch捕获处理,之后程序继续运行。
在java中,分异常(Exception)和错误(error)两种。其中“异常”是程序编写不完善(或者由于外部原因,网络错误,文件错误等)引起的;而“错误”虚拟机本身故障(如OutOfMemoryError),一旦出现错误,我们将不能处理,程序将无法继续执行。
2、异常处理流程
try{
// your code
}catch(Exception1 e){
//do something
}catch(Exception2 e){
//do something
}finally{
//do somehing
}
以上就是捕获异常和处理异常的大体流程,在try中出现的异常会被相应的catch捕获并处理。
finally不管是否出现异常都将会执行,主要是用来关闭一些资源(如文件关闭等)。
finally其他性质:
1)、在try中return,finally仍旧会执行
2)、在finally中抛出异常将会覆盖try中的异常
3)、如果在finally中使用return将看不到异常
3、异常说明(很重要)
异常说明很简单,就是你写了一个方法,在之后说明你要抛出的异常类型,如
class Test{
public void func() throws MyException(){
//业务代码
throw new MyException();
}
}
以下是测试的代码:
main(){
try{
Test t = new Test();
t.func();
}catch(MyException e){
e.printStackTrace();
}
}
会打印出报错的位置。
如果在func之后未throws MyException那么将会报错
结果报错:在相应的 try 语句主体中不能抛出异常错误MyException
4、RuntimeException
这个异常是唯一不用“异常申明”的,而且也不用自己手动抛出异常,而是由虚拟机代劳的。
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/wolinxuebin/article/details/46946697