java – 哪里有“静态final”直接分配到?年轻的gen或老一代或perm gen?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 哪里有“静态final”直接分配到?年轻的gen或老一代或perm gen?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含932字,纯文字阅读大概需要2分钟。
内容图文
![java – 哪里有“静态final”直接分配到?年轻的gen或老一代或perm gen?](/upload/InfoBanner/zyjiaocheng/700/d5b26733d5d1414cbccc172ba9881a22.jpg)
是一个“静态决赛”直接分配到年轻一代或老一代或perm gen? (我想它很可能会在我想的时候进入老一代.)如果它是在perm gen中分配的那么,当它在Perm Gen中进行类卸载时会被垃圾收集吗?
解决方法:
Is a “static final” directly allocated into young gen or old gen or perm gen?
静态最终变量引用的对象将根据与任何其他对象相同的规则进行分配.它最有可能分配给年轻一代或老一代(如果它很大且某些其他条件适用).
该对象将通过一些任意代码中的新执行来分配. JVM无法知道该对象(最终)将被分配给静态最终变量.
包含静态变量的帧的空间可能在permGen中分配.当然,这不是常规的Java对象.
If it is allocated in the perm gen then, will it be garbage collected when class unloading takes place in Perm Gen?
这取决于permGen是否被垃圾收集.在现代JVM中,它是,并且我希望卸载类静态引用的对象将在同一GC循环中被垃圾收集,或者下一个…假设它们无法访问.
无论哪种方式,您都不应该编写应用程序以依赖于任何这些细节.它们是特定于JVM的.
请注意,从Java 8开始,这个问题从permgen is no more开始就没有实际意义.
内容总结
以上是互联网集市为您收集整理的java – 哪里有“静态final”直接分配到?年轻的gen或老一代或perm gen?全部内容,希望文章能够帮你解决java – 哪里有“静态final”直接分配到?年轻的gen或老一代或perm gen?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。