前言 一直以来都在接受一个论调:在Java的内存管理中,基础类型变量保存在栈中,对象类型保存在堆中。 这其实是一个很粗的论调,会引起很多错误的理解。 这篇博客的产出,仅是因为脑子里偶然间冒出来的一个问题:java栈内存的内存回收是怎么做的? 因为这个问题,引发了一系列的小问题:所有的基础类型变量都保存在栈中吗?栈和堆上都在运行着我们熟悉的GC吗?怎么都感觉GC算法在栈这种结构上没法跑啊......堆内存,栈内存究竟是什么样的? 这里我非常推荐你阅读一本关于java虚拟机的书:《深入理解java虚拟机》 – 周志明 Java栈内存 Java栈内存的内存回收是怎么