JVM的堆内存和栈内存中存储的数值或类型的区别在哪里


基本类型变量的值和内容是一致的
引用类型变量的值在堆内存,赋值的内容是一个地址,这个地址也在栈内存,指向堆内存
引用类型变量的值是内存地址,内存地址在栈内存,指向堆;内容是实例,在堆内存

引用类型变量时,栈内存存储的是指向堆的内存地址,真正数据在堆内存中,栈内存中存的是指向堆的地址,占用8个字节

类里面方法外的是成员方法跟属性(property),如果属性没有static修饰就是在堆,有即为静态属性(类属性)就不在,即在永久区,所有对象公用一份;
eg:int i = 4,这个4 在栈内存 ,i是一个符号,理解成不占内存就好了。

成员方法内的基本数据类型的变量的值和内容,只会出现在栈内存中(成员方法内不会有静态的变量)


免责声明!

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



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