Java中异常中finaly的超能力

我们来看看下面的代码

java 复制代码
public class B {
    static int fun(){
        try{
         System.out.println("11");
         return 1;
        }finally {
            System.out.println(22);
        }
    }
    public static void main(String []a){
        System.out.println(fun());
    }
}

结果会是什么呢,finaly中的值会不会被执行呢?

结果是

11

22

1

  1. fun() 方法被从 main() 方法中调用。
  2. try 块中的代码被执行,并将 "11" 打印到控制台。
  3. try 块中的 return 语句导致 fun() 方法退出,并返回值 1。然而,在方法实际返回之前,finally 块被执行。
  4. finally 块中的代码打印 "22" 到控制台。
  5. 最后,从 main() 方法中打印返回的值 1 到控制台
相关推荐
charlie11451419114 分钟前
嵌入式C++工程实践第20篇:GPIO 输入模式内部电路 —— 芯片是如何“听“到外部信号的
开发语言·c++·stm32·单片机
消失的旧时光-194317 分钟前
Spring Boot 工程化进阶:统一返回 + 全局异常 + AOP 通用工具包
java·spring boot·后端·aop·自定义注解
NE_STOP26 分钟前
Redis--发布订阅命令和Redis事务
java
PAC_3Dame30 分钟前
记一次真实的线上OOM
java
xinhuanjieyi37 分钟前
极语言让ai学习的方法
开发语言·学习
SunnyDays10111 小时前
如何在Java中将Word文档转换为图像(JPEG、PNG或SVG)
java
xiaogutou11211 小时前
2026年历史课件PPT模板选购指南:教师备课效率与精度的平衡方案
开发语言·c#
Lumos_7771 小时前
Linux -- 线程
java·jvm·算法
知兀1 小时前
【MybatisPlus】后端用枚举类,数据库用tinyint,存在枚举类型转换
java
StockTV1 小时前
印度股票实时数据 NSE和BSE的实时行情、K 线及指数数据
java·开发语言·spring boot·python