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

Sum*_*hra 2 java

Dog d=new Dog();
Run Code Online (Sandbox Code Playgroud)

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

hvg*_*des 6

d是Dog对象实例的引用.

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

为了说明,你可以做到

 Dog d2 = d;
Run Code Online (Sandbox Code Playgroud)

现在你有2个引用,d并且d2,它指向相同的底层实例Dog.

如果你这样做了

d = new Dog();
Run Code Online (Sandbox Code Playgroud)

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