以下代码创建一个数组和一个字符串对象.代码执行后,对这些对象有多少引用?对象是否有资格进行垃圾回收?
...
String[] students = new String[10];
String studentName = "Peter Parker";
students[0] = studentName;
studentName = null;
...
Run Code Online (Sandbox Code Playgroud)
我的回答是studentName有资格进行垃圾收集.但是给出的答案都不符合条件.我认为学生[0]指的是字符串"Peter Parker",studentName也是这样.现在studentName指的是null,学生[0]仍然指的是"Peter Parker"(我通过打印出来检查了这一点).给出的解释是学生[0]仍然指的是studentName所以studentName也没有资格进行垃圾收集.但我不理解因为studentName现在指的是null而学生[0]指的是"Peter Parker".我的理解是错的吗?