常量池的一点问题

常量池的一点问题

老师,当比如说Integer one=400时,她传入的参数超过了127,在常量池中找不到这样一个对象,他按理说要调用new Integer(400),那他新产生的这个对象啊,400>128,这个对象还能存放在常量池中吗?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小小 2021-08-01 18:38:01

同学你好,此时对象是不会存放在常量池中的。

祝学习愉快~


  • 提问者 慕先生6309556 #1

    老师,那如果传入参数在常量池范围内时,比如说
    Integer one=100,这个one对象存放在堆中还是常量池中呢?

    2021-08-01 18:40:04
  • 好帮手慕小小 回复 提问者 慕先生6309556 #2

    同学你好,one是对象的引用存放在栈内存中,具体指向存放在常量池中的数据

    祝学习愉快~

    2021-08-02 11:53:07
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师