GC如何判断对象可以被回收 引用计数法:每个对象都有一个被引用的计数属性,当增加一次引用时加一,引用释放时减一,当计数为零时即判断其可以被回收,但是jvm并没有用该方法,因为其有一个缺陷就是当A和B相互引用时,他们的计数永远不为零,就永远无法被回收,需要引入其他机制来解决该问题; 可达性分析法:jvm采用该方法,从GC Roots开始向下搜索,搜索走过的路径被称为引用链,当一个对象到GCRoots没有任何一个引用链相连,那么判断该对象为可回收对象;