java中栈与堆的区别?

发布网友 发布时间:2022-04-23 07:54

我来回答

3个回答

热心网友 时间:2022-05-10 22:52

展开1全部Java栈是与每一个线程关联的,JVM在创建每一个线程的时候,会分配一定的栈空间给线程。它主要用来存储线程执行过程中的局部变量,方法的返回值,以及方法调用上下文。栈空间随着线程的终止而释放
Java中堆是由所有的线程共享的一块内存区域,堆用来保存各种JAVA对象,比如数组,线程对象等

热心网友 时间:2022-05-11 00:10

java的所有局部变量 零时产物都是放在栈里的
堆是放new出来的东西的 也就是对象
如 Integer i = new Integer(1);

前面的 i只是一个名字 开辟出来的空间放了一个地址(不一定是物理地址 )但是通过这个地址能找到
堆中的new Integer(1);这个对象然后
就能访问了

任务中 采纳哦 亲

热心网友 时间:2022-05-11 01:45

String s = new String("ss");
s就放栈里,ss就放堆里,
栈先进后出,堆先进先出。

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