java接口在内存中的位置?他们居住在堆或堆栈中,还是全局内存?我正在考虑堆栈,因为它们是在编译时创建的。我对么?Java接口...动态或静态存储器?
4
A
回答
5
类定义 - 包括接口和抽象类 - 被保存在PermGen空间中,这意味着它们从不被垃圾收集。 PermGen是iirc,是堆的一部分。
0
类定义(包括接口等)存储在堆(通常在永久代中,因为它们的生命周期很长)。如果创建它们的ClassLoader
是垃圾回收,那么它们也有资格进行垃圾回收。
1
接口在技术上不是“实例化”的,因为创建了常规类实例,但类信息存储在java permgen空间中。请参阅http://blogs.oracle.com/jonthecollector/entry/presenting_the_permanent_generation以获取有关permgen以及类实例和类信息之间差异的更多信息。
相关问题
- 1. Java静态接口变量
- 2. 静态存储器管理
- 3. Java静态进口
- 4. C++:静态指针,静态对象和动态存储器分配
- 5. 设计 - 静态工具类或接口?
- 6. 静态接口工厂方法[Java 8]
- 7. Java的嵌入式静态接口
- 8. Java 8接口 - 静态工厂方法
- 9. 静态或动态ips
- 10. C#静态存储器地址
- 11. C++约动态存储器
- 12. JNI和静态接口
- 13. 接口,静态类问题
- 14. 存储静态图像,Blob存储区
- 15. 静态constexpr成员存储
- 16. Python静态或不静态
- 17. 静态或不静态
- 18. Java存储状态
- 19. 带动态内容的Java静态窗口
- 20. 将局部变量中的动态int值存储为静态?
- 21. 动态或静态顶点缓冲区?
- 22. 静态或动态会议室星号?
- 23. 静态或动态初始化
- 24. Java动态与静态绑定
- 25. JAVA:什么时候该类应该是静态或动态的
- 26. g ++链接器:如果静态库存在,强制静态链接?
- 27. 什么是静态库,静态链接动态库和动态链接动态库的.lib文件?
- 28. Android。动态类加载和Java接口
- 29. 动态加载Java接口的实现
- 30. 动态测试或静态链接测试?
@Drew Wills:是不是只针对Sun VM的PermGen? – SyntaxT3rr0r 2010-02-23 17:33:52
@WizardOfOdds可能 - 很容易(对我来说)忘记还有其他类型的东西。 PermGen是世代GC策略的一部分:它指代_permanent_世代。其他JVM是否具有分代GC? – 2010-02-23 17:38:09
@WizardOfOdds对这个问题不会有任何答案是JVM实现特定的? – 2010-02-23 17:53:13