Java中的垃圾收集器是否仅用于从堆内存中清除未使用的对象,或者它实际上也帮助清理堆栈内存?
堆栈上唯一存在的东西是原始类型的引用和实例。
堆栈中没有垃圾
垃圾收集只发生在不再从任何GC根引用的对象的堆上。
Stack是本地变量(如原语和对象引用)所在的地方。这里没有GC的概念。想想堆栈数据结构。如果局部变量在(特定线程的堆栈帧的)作用域中,则将其推入该堆栈帧,当它超出作用域时,将其弹出堆栈帧。
它的对象没有来自线程堆栈的强引用,可以被清理。