什么情况下JVM内存中的一个对象会被垃圾回收? 1、什么时候会触发垃圾回收? 2、被哪些变量引用的对象是不能回收的? 3、Java中对象不同的引用类型 4、finalize()方法的作用 1、什么时候会触发垃圾回收? 平时我们系统运行创建的对象都是优先分配在新生代里的,如图: 然后如果新生代里的对象越来越多,都快满了,此时就会触发垃圾回收,把新生代没有人引用的对象给回收掉,释放内存空间 这就是新生代一个核心的垃圾回收触发时机,如下图。 2、被哪些变量引用的对象是不能回收的? 首先第一个问题,一旦新生代快满了,那么垃圾回收的时候,到底哪些对象是能回收的,哪些对象是不能回收的呢? <