采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
关于java memory model这块,课程1-5中说:”一个对象的【成员变量】,可能随着对象自身存放在heap上(不论这个成员变量是原始类型还是引用类型),静态成员变量跟随类定义一起存放在heap上。“ 这里老师用了可能,还有其他的可能么?是否会放在其他地方?
看这个图。两个线程拥有一些列的本地变量。其中一个本地变量(Local Variable 2)执行堆上的一个共享对象(Object 3)。这两个线程分别拥有同一个对象的不同引用。这些引用都是本地变量,因此存放在各自线程的线程栈上。这两个不同的引用指向堆上同一个对象。
非常感谢!
Class T{
int num;
}
T t = new T();
num在堆上.
T t;
num在栈上.
这个是理解的,多谢,不过课程说:“一个对象的【成员变量】,可能随着对象自身存放在heap上”,很好奇为什么用“可能”
登录后可查看更多问答,登录/注册
构建完整并发与高并发知识体系,倍增高薪面试成功率!
1.7k 1
1.1k 18
1.2k 15
3.6k 12
1.2k 12