java - 哪个是对象,哪个是引用变量

标签 java

Dog d=new Dog();

上面一行中哪个是对象,哪个是引用变量?或者对象和引用变量是否相同?

最佳答案

d 是对 Dog 对象实例的引用。

对象实例和引用不一样;引用指向对象实例。

为了说明这一点,你可以这样做

 Dog d2 = d;

现在您有 2 个引用,dd2,它们指向 Dog 的同一底层实例。

如果你现在这样做

d = new Dog();

d2 指向您创建的第一条狗,d 指向第二条狗(它最初指向第一条狗)。此语句创建一个新的对象实例,并将其分配给原始 Dog 引用。

关于java - 哪个是对象,哪个是引用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3920776/

相关文章:

java - xsd.exe/XMLSerializer 相当于 Java?

java - 显示当前(或指定)目录中所有 .txt 文档的名称

java - 在 java 中将字符串转换为日期时出现意外输出

java - 删除 j2me 中的安全性

java - 如何将由多个AND、OR组成的If语句转换为switch语句?

java.lang.NullPointerException Webdriver 失败

java - 如何将 Stack 中的 View 添加到 LinearLayout 中?

java - 使用算法 X 解决精确覆盖问题的 Pentomino 求解算法

java - LinUCB exploration-exploitation 算法不会随时间改善结果

java StreamTokenizer wordChars() 和 nextToken()