/*
finally 一定会执行到除非
System.exit(0) //退出jvm
*/
class Demo{
public int show(int index)throws ArrayIndexOutOfBoundsException{
if(index<0)
throw new ArrayIndexOutOfBoundsException("越界了");
int [] arr=new int[3];
return arr[index];
}
}
class ExceptionDemo6{
public static void main(String[] args) {
Demo d=new Demo();
try{
int num=d.show(-1);
System.out.println("num="+num);
}
catch(ArrayIndexOutOfBoundsException e){
System.out.println(e.toString());
return;//finally 还会执行 除非 System.exit(0);
}
finally{//通常用于关闭(释放)资源
System.out.println("finally");
}
System.out.println("over");
}
}
/*
try catch finally 代码块组合特点:
1、 try catch finally
2、try catch(多个)当没有必要资源需要释放时,可以不定义finally
3、try finally 异常无法直接catch 处理但是资源需要关闭
void show()throws Excepiton{//必须声明因为没有catch
try{
//开启资源
throw new Exception();
}
finally{
//关闭资源
}
}
*/
/*
连接数据库
查询、Exception
关闭连接 finally
*/
Java 异常finally 代码块
最新推荐文章于 2021-08-13 20:47:17 发布