A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

局部变量本来在方法中,会随着方法的出栈而出栈,当前面有final修饰时,它的生命期就跟所在类一样长,那么它在内存中的什么位置?求解答

12 个回复

倒序浏览
在方法区的常量池中!
回复 使用道具 举报
钱金磊 发表于 2016-5-13 22:31
在方法区的常量池中!

是不是被final修饰,意味着变成常量了?
回复 使用道具 举报
钱金磊 发表于 2016-5-13 22:31
在方法区的常量池中!

是不是被final修饰,意味着变成常量了?
回复 使用道具 举报
刘宽 发表于 2016-5-13 22:41
是不是被final修饰,意味着变成常量了?

是的,final 字面意思就是最终的!你可以查看英语翻译!
回复 使用道具 举报
会存在常量池中
回复 使用道具 举报
ybqred 中级黑马 2016-5-13 23:02:05
7#
刘宽 发表于 2016-5-13 22:39
是不是被final修饰,意味着变成常量了?

被final修饰的变量 变为常量 ,教材上的原话
回复 使用道具 举报
ybqred 中级黑马 2016-5-13 23:05:31
8#
刘宽 发表于 2016-5-13 22:39
是不是被final修饰,意味着变成常量了?

被final修饰的变量 变为常量 ,教材上的原话
回复 使用道具 举报
climb 中级黑马 2016-5-14 00:40:44
9#
对的,,一楼正解。。。。。。。。。。。。。。。
回复 使用道具 举报
楼上说的都不错,受教了
回复 使用道具 举报
钱金磊 发表于 2016-5-13 22:31
在方法区的常量池中!

谢谢,我知道了
回复 使用道具 举报
相当于是常量了,因为被final修饰的常量只能更改一次,也是最后一次
回复 使用道具 举报
本来局部变量在内存中应该是存放在栈中的,但是被final修饰以后就变成一个长期存在的,所以就放在了堆中,栈只是临时存储的空间
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马