博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面试题:return和finally执行
阅读量:5171 次
发布时间:2019-06-13

本文共 518 字,大约阅读时间需要 1 分钟。

Demo类:

public class Demo {    public int get()    {        int x=1;        try {            x++;            return x;        }finally{            ++x;        }    }}

Test测试类:

public class Test0 {    public static void main(String[] args) {
Demo demo =new Demo(); System.out.println(demo.get()); }}

代码的执行过程:

     x=1,执行try中的代码,x++,此时x的值为2并且return开辟了一块新的内存存储2,接着执行finally,++x,x的值变成3,然后返回return,但是x的值并没有改变,输出结果依然是2,因为return已经开辟了一块新的内存,两者没有一点关系,所以,输出结果为2。

 

转载于:https://www.cnblogs.com/hr1997/p/5542598.html

你可能感兴趣的文章
python xml解析和生成
查看>>
MySQL MGR集群搭建
查看>>
吴恩达深度学习笔记 cousrse4 week1作业
查看>>
程序员前辈走过的路
查看>>
hduoj 2062Subset sequence
查看>>
UBUNTU 10.04 更新源 补充
查看>>
outputcache
查看>>
pc110301QWERTYU
查看>>
go 数组
查看>>
ilspy 点击根节点后进行解析的方法
查看>>
promise原理及使用方法
查看>>
MVC实例应用模式
查看>>
[Done]FindBugs: boxing/unboxing to parse a primitive
查看>>
数据库表中字段的字符串替换
查看>>
把二元查找树转变成排序的双向链表
查看>>
input与select 设置相同宽高,在浏览器上却显示不一致,不整齐
查看>>
NUGET常用命令
查看>>
CentOs下Apache+Python+Django+mod_wsgi环境搭建
查看>>
java基础知识总结(3)
查看>>
spark配置
查看>>