Java常量,变量,对象(字面量)在JVM内存中的存储位置


Java常量,变量,对象(字面量)在JVM内存中的存储位置

苦苦研究了快一天了,终于找到个“大神精准的总结”了!!!!!!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

建议与《JVM存储位置分配》https://blog.csdn.net/HD243608836/article/details/87940295结合着看,容易理解!!

 

  • 针对Java中的常量,变量,字面量,对象的存储,略作总结.


总结:new出的对象存储堆中,””存储常量池中,基本类型字面量为常量或静态变量时,存储在常量池,为成员变量存储在堆中,为局部变量存储在栈中.

 

ps:

常量就是 程序运行中 不可以改变的量(数据)

变量就是 程序运行中 可以改变的量(数据)

 

所以,在“类的成员属性”中:

static修饰的变量(static int x=10)在方法区中,

final修饰的常量(static final int x=10)在方法区中的常量池中,

普通的变量(int x=10)在堆中。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM