当前位置: java基础教程 > 17-异常处理 > 阅读正文

finally 关键字

2021.2.9.   431 次   731字

对于 try — catch 语句,一旦出现异常,后于的语句无法执行

public static void main(String[] args) {
	try{
	    int[] a = new int[3];
	    System.out.println(a[4]);  //出现异常的语句
	    System.out.println("后续代码");
	}catch(Exception e) {
		System.out.println(e);
	}
}

程序运行输出的结果,可见后续代码并没有被执行

java.lang.ArrayIndexOutOfBoundsException: 4

如果需要在出现异常后,仍执行某些必须的后续代码,那么需要 finally

1.finally 语法

finally 必须配合 try — catch 使用

try{
  //可能出现异常的代码
}catch(异常对象){
  //处理异常对象
}finally{
  //无论是否出现异常,都要执行的代码块;
}

finally 中的代码永远被执行,如果有 return ,那么永远 return 该内容

2.例子

对于 finally 中的代码块,无论是否出现异常,都会执行

public static void main(String[] args) {
	try{
	    int[] a = new int[3];
	    System.out.println(a[4]);  //出现异常的语句
	    System.out.println("后续代码");
	}catch(Exception e) {
		System.out.println(e);
	}finally {
		System.out.println("finally 中的后续代码");
	}
}

程序执行输出的结果

java.lang.ArrayIndexOutOfBoundsException: 4
finally 中的后续代码

本篇完,还有疑问?

加入QQ交流群:11500065636 IT 技术交流群