gpt4 book ai didi

java - 静态变量是否位于堆上的永久生成空间上

转载 作者:行者123 更新时间:2023-11-30 04:15:28 25 4
gpt4 key购买 nike

如果我在 Java 中创建静态变量,它会自动进入堆上的永久代空间吗?显然答案是肯定的,但我在任何地方都找不到确认。我知道静态变量(还有字符串和枚举)在 JVM 的生命周期中都处于 Activity 状态,因此它必须位于永久堆上。这是正确的吗?

最佳答案

“PermGen”的想法完全依赖于实现,JVM 可以自由地处理“物理”内存管理,但对它们来说很有意义——它们甚至不需要提供垃圾收集!

PermGen 只是某些 JVM 实现(包括多年来的 Sun/Oracle HotSpot JVM)的一个功能,实际上 Oracle Java 8 JVM 中的新方法正在消除它。包含 PermGen 概念的 JVM 很可能会在其中放置静态变量以提高性能,但这完全取决于程序员。

关于java - 静态变量是否位于堆上的永久生成空间上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18513600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com