Java,两个对象,object1 = object2 = class / type ...不明白

问题描述 投票:4回答:8

我有两个实例变量,head和tail。在代码中有一行:

head = tail = new Node<E>();

这是否意味着Node类有两个实例,head和tail?我在这里很困惑。

java class object instance
8个回答
13
投票

它只是意味着:

tail = new Node<E>();
head = tail;

所以有2个引用(headtail)指向相同的Node<E>实例。


4
投票

这意味着有两个引用ONE object Node

tail = new Node<E>();实际上返回一个等于指定值的值(在本例中为对象引用)。


3
投票

不,只有一个Node<E>created实例,但headtail都引用它,所以你有两个指向同一个对象的引用变量。


2
投票

只有一个Node的例子。 headtail都指向同一个实例。


2
投票

当然不是。

以下是此代码中按顺序发生的情况。

  1. 'new'用于创建Node类的实例,也称为对象
  2. 对此实例的引用存储在尾部引用中
  3. 对此实例的引用存储在头参考中。

1
投票

只创建了一个对象,head和tail都引用了同一个对象。


1
投票

2个引用headtail都被分配给Node的相同单个实例。


0
投票
object1=object2 ;

这里Object1对其他的一个引用意味着简单地将object2复制到object1引用的所有地址

只需将object2复制到object1中

© www.soinside.com 2019 - 2024. All rights reserved.