栈中存放基本数据类型变量和对象句柄?

来源:1-5 JAVA内存模型

奥观海同志

2019-05-15

请问老师,对于:
int a;
int b =1;
String s ;
String s1 = “aaaa”;
我可以理解为栈中存放的是a, b ,s , s1这几个变量吗?

句柄可以理解为引用变量吗?

写回答

1回答

Jimin

2019-05-15

你好,a、b不适合理解成句柄,因为他们是基础数据类型,实际进行内存分配和对象是不一样的,从你的问题里我感觉你可能会一些jvm知识,应该能明白基础数据类型和对象在实际内存分配时的差异,如果你不确定,可以再补充一下jvm里这块的知识。

接下来具体说句柄,在java中我们在实例化完对象后,在对其进行操作时,用来去操作对象的就叫做句柄,有的人就把他里理解为“引用”,也有人理解为c语言里的“指针”。

0
1
奥观海同志
我说的就是"引用"的变量,s 和 s1. 谢谢老师回答
2019-05-16
共1条回复

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程