专栏中心

EEPW首页 > 专栏 > 扣丁学堂Java培训之finally 一定会执行(实例代码)

扣丁学堂Java培训之finally 一定会执行(实例代码)

发布人:扣丁学堂1 时间:2021-01-11 来源:工程师 发布文章

本篇文章小编和大家分享一篇finally 一定会执行(实例代码),小编觉得对学习Java开发技术感兴趣的小伙伴会有帮助,因此分享给小伙伴们,想要参加Java培训或者是对Java感兴趣的小伙伴可以了解一下。

扣丁学堂Java在线教程之finally 一定会执行(实例代码)

如下所示:

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 一定会执行(实例代码),想要了解更多内容的小伙伴们可以登录扣丁学堂官网查询更多的内容。扣丁学堂Java在线学习是业内知名的培训机构,扣丁学堂不仅有专业的老师和与时俱进的课程体系,还有大量的Java在线教程供学员观看学习。喜欢Java,想要学习Java开发的小伙伴们快快行动吧。扣丁学堂java技术交流群:487098661。微信号:codingbb

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

英特尔 Jaguar Shores 据传曝光,展示 18A 和 HBM4 在机架级 AI 解决方案上

特斯拉Robotaxi服务Bug频频出现,系统性问题究竟是谁的锅?

2025-08-21

中星联华科技受邀参加第三届信息通信仪器仪表产业技术论坛、信息通信测试仪器仪表专委会一届二次委员会

\"标普全球汽车\"发布思想领袖峰会,打造智能汽车未来

基于Nordic nRF54L15 SoC的智能球技术提升迷你高尔夫游戏体验

中国研究团队在半导体领域取得新突破,基于 DRAM 原理

台积电2nm制程计划将对所有客户“不打折、不议价”,价格比3nm高出约50%-66%

2025-08-21

据报道,三星趁机招募英特尔人才,聘请玻璃基板和封装专家

EDA/PCB 2025-08-21

iPhone将彻底取消拍摄按钮

2025-08-21

爱立信或收购英特尔业务

2025-08-21
更多 培训课堂
更多 焦点
更多 视频

技术专区