Java非堆内存和堆栈内存有什么区别?如果不是,它们是否相同?两者之间有什么区别?

Java非堆内存和堆栈内存有什么区别?如果不是,它们是否相同?两者之间有什么区别?,第1张

Java非堆内存和堆栈内存有什么区别?如果不是,它们是否相同?两者之间有什么区别?

在所有基于C的语言(和大多数其他语言)中,基本上有三类存储:

  1. 叠放
  2. 静态(有多种变化)

堆你熟悉的。

您也很熟悉堆栈,但您只是不知道。当您具有带有“局部”变量的方法时,这些变量将在“调用框架”中分配。调用方法时分配“调用框架”,而从方法返回时将其删除,因此,最有效的方法是使用随调用而增长而随返回而收缩的“堆栈”。

静态是您没有明确分配的东西,从程序开始执行时就已经存在。

堆栈所需的空间通常很小,并与上述类别中的“非堆内存”集中在一起。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5164995.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-18
下一篇2022-11-18

发表评论

登录后才能评论

评论列表(0条)

    保存