相关疑难解决方法(0)

Oracle Java教程 - 在回答问题时可能出现错误

我是Java新手,阅读Oracle教程.在每个部分之后,有问题和答案,我不理解一个答案中的句子(见下面的粗体线).

来源是https://docs.oracle.com/javase/tutorial/java/javaOO/QandE/objects-answers.html

我指的是问题2,看到粗体字.据我所知,如果没有对数组的引用,则数组有资格进行垃圾回收.无关紧要,是否存在对此数组所持有的对象的引用,因为内部对象(在数组内)具有自己的引用计数.是对的吗?请解释粗体句.

从oracle教程中引用:https://docs.oracle.com/javase/tutorial/java/javaOO/QandE/objects-answers.html

  1. 问题:以下代码创建一个数组和一个字符串对象.代码执行后,对这些对象有多少引用?对象是否有资格进行垃圾回收?

    String[] students = new String[10];
    String studentName = "Peter Smith";
    students[0] = studentName;
    studentName = null;
    
    Run Code Online (Sandbox Code Playgroud)

    答:有一个对students数组的引用,该数组有一个对字符串Peter Smith的引用.这两个对象都没有资格进行垃圾回收.数组学生没有资格进行垃圾收集,因为它有一个对象studentName的引用,即使该对象已被赋值为null.该对象studentName不符合条件,因为 students[0]仍然引用它.

java

18
推荐指数
2
解决办法
1164
查看次数

标签 统计

java ×1