从上图可分析出:reference1,reference2,reference3都是gc roots
reference1-> 对象实例1;
reference2-> 对象实例2;
reference3-> 对象实例4;
reference3-> 对象实例4 -> 对象实例6;
可以得出对象实例 1 、 2 、 4 、 6 都具有 GC Roots 可达性,也就是存活对象,不能被 GC 回收的对象。而对于对象实例 3 、 5 直接虽然连通,但并没有任何一个 GCRoots 与之相连,这便是 GC Roots 不可达的对象,这就是 GC 需要回收的垃圾对象。