Java的对象的内容在堆内存中的存储形式是怎样的?

发布网友 发布时间:2022-04-22 01:17

我来回答

2个回答

热心网友 时间:2023-07-15 23:39

java对象是引用类型,引用类型的对象的内存分配在堆中。

如果分配在堆中的java对象包含属性,这可以分两种情况分析:
1.属性是基本类型(byte,char,int等)的
则对象的堆内存保存的就是基本类型的值本身。
2.属性是引用类型的(String是引用类型的)
则对象的堆内存中保存的只是这个属性的引用,属性所指向的对象分配在其它堆内存中。

所以,你的理解1是对的,它就是属性是引用类型时的情况。但理解得不完整,还应包括属性是基本类型时的情形。

热心网友 时间:2023-07-15 23:39

java中数组是以对象形式存在的,栈中存储的是数组对象的地址(即引用),而对象本身不存放在栈中,而是存放在堆中,使用时通过栈中的引用地址找到堆中的实际对象,这里的引用地址类似于C/C++中的指针。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com