int a = 1这个a和1分别是存在哪里啊?

发布于2022-01-12 17:22:31

哪个存在栈里,还是都存在栈里?

1个回答
admin
网友回答2022-01-12

方法内定义的基本数据类型放在帧栈里,而且栈里面的数据是线程独有的,不共享  — 《深入理解 JVM》所以,局部成员变量 int a =1; 1存放在栈内存

全局变量i,他是存放在java堆中。因为它不是静态的变量,不会独立于类的实例而存在,而该类实例化之后,放在堆中,当然也包含了它的属性i。

成员变量 int a = 1; a 存放在方法区,1存放在堆内存,a指向该内存
局部变量 int a = 1;a 存放在方法区, 1存放在栈内存,a指向该变量

如果想要获得,更多Java知识的话,可以登陆优就业官网咨询一下Java的相关问题,咨询老师都是非常专业的啦,或者加群和小伙伴们一起进步!

回到
顶部