finally 一定会执行(实例代码)

所属分类: 软件编程 / Java编程 阅读数: 71
收藏 0 赞 0 分享

如下所示:

class Exc{
 int a;
 int b;
}
 
 
public class Except {
 @SuppressWarnings("finally")
 static int compute (){
 Exc e = new Exc();
 e.a = 10;
 e.b = 10;
 int res = 0 ;
 try{
  res = e.a / e.b;
  System.out.println("try ……");
  return res + 1;
  
 }catch(NullPointerException e1){
  System.out.println("NullPointerException occured");
 }catch(ArithmeticException e1){
  System.out.println("ArithmeticException occured");
 }catch(Exception e3){
  System.out.println("Exception occured");
 }finally{
  System.out.println("finnaly occured");
 }
 System.out.println(res);
  
 return res+3;
 }
 
 public static void main(String[] args){
 int b = compute();
 System.out.println("mian b= "+b);
 }
}

输出:

try ……
finnaly occured
mian b= 2

结论: 如果没有异常, 则执行try 中的代码块,直到 try 中的 return,接着执行 finally 中的代码块,finally 执行完后 , 回到try 中执行 return 。退出函数。

class Exc{
 int a;
 int b;
}
 
 
public class Except {
 @SuppressWarnings("finally")
 static int compute (){
 Exc e = new Exc();
// e.a = 10;
// e.b = 10;
 int res = 0 ;
 try{
  res = e.a / e.b;
  System.out.println("try ……");
  return res + 1;
  
 }catch(NullPointerException e1){
  System.out.println("NullPointerException occured");
 }catch(ArithmeticException e1){
  System.out.println("ArithmeticException occured");
 }catch(Exception e3){
  System.out.println("Exception occured");
 }finally{
  System.out.println("finnaly occured");
 }
 System.out.println(res);
  
 return res+3;
 }
 
 public static void main(String[] args){
 int b = compute();
 System.out.println("mian b= "+b);
 }
}

输出:

ArithmeticException occured
finnaly occured
0
mian b= 3

结论: 如果try 中有异常, 则在异常语句处,跳转到catch 捕获的异常代码块, 执行完 catch 后,再执行 finally ,跳出 try{}catch{}finally{} ,继续向下执行,不会去执行try中 后面的语句。

以上这篇finally 一定会执行(实例代码)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

SWT(JFace) 文本编辑器 实现代码

SWT(JFace) 文本编辑器 实现代码
收藏 0 赞 0 分享

SWT(JFace)小制作 BugTracker

SWT(JFace)小制作 BugTracker
收藏 0 赞 0 分享

SWT(JFace)小制作 FileBrowser文件浏览

SWT(JFace)小制作 FileBrowser文件浏览
收藏 0 赞 0 分享

SWT(JFace)体验之ProgressBar

SWT(JFace)体验之ProgressBar 实现代码。
收藏 0 赞 0 分享

SWT(JFace)体验之Slider,Scale

SWT(JFace)体验之Slider,Scale实现代码。
收藏 0 赞 0 分享

SWT(JFace)Group(分组显示)

SWT(JFace)体验之Group(分组显示)
收藏 0 赞 0 分享

SWT(JFace)体验之Sash(活动控件)

SWT(JFace)体验之Sash(活动控件)
收藏 0 赞 0 分享

SWT(JFace)体验之ViewForm的使用

SWT(JFace)体验之ViewForm的使用
收藏 0 赞 0 分享

SWT(JFace)体验之图片的动态渐变效果

SWT(JFace)体验之图片的动态渐变效果
收藏 0 赞 0 分享

浅谈将子类对象赋值给父类对象

浅谈将子类对象赋值给父类对象
收藏 0 赞 0 分享
查看更多