java虚拟机(一)对象分代年龄

有个面试官问过一个问题,为什么对象分代年龄有15而没有16,17.

因为储存对象分代年龄的只有四位。那当然最多就只有15.

来看下图。

每个对象刚刚新建就在新生代堆当中。(除了一些较大的对象,要分配很大的连续的内存空间,就直接进入到老年代)

这时候,垃圾回收机制就起作用了,当一个对象判定为死亡的时候,垃圾回收就会来处理,经过一轮,新生代就复制到另外的内存空间,他的新生代的值也会相应的+1。

当然最开始的新生代是最容易被处理出去。一轮轮过后,才会成为老年代。

猜你喜欢

转载自blog.csdn.net/xu505928168/article/details/91352771