Java中堆内存(heap)和栈内存(stack)的区别

Java中堆内存(heap)和栈内存(stack)的区别

Java中堆内存(heap)和栈内存(stack)的区别Java中堆内存(heap)和栈内存(stack)的区别Java中堆内存(heap)和栈内存(stack)的区别Java中堆内存(heap)和栈内存(stack)的区别


对象在堆内存中,变量在栈内存中。方法结束后栈内存自动释放,但是堆内存不会自动释放。用收餐具举例子(公用餐具,一次性餐具)
GC:垃圾回收  Gabbage Collection。Java中一般不需要程序员进行内存的回收(别人帮你收餐具)。当没一个对象没有任何变量指向它的时候就“可以”被销毁,局部变量退出后就消失了就不再指向了