我有两个实例变量,head和tail。在代码中有一行:
head = tail = new Node<E>();
这是否意味着Node类有两个实例,head和tail?我在这里很困惑。
它只是意味着:
tail = new Node<E>();
head = tail;
所以有2个引用(head
和tail
)指向相同的Node<E>
实例。
这意味着有两个引用ONE object Node
。
行tail = new Node<E>();
实际上返回一个等于指定值的值(在本例中为对象引用)。
不,只有一个Node<E>
created实例,但head
和tail
都引用它,所以你有两个指向同一个对象的引用变量。
只有一个Node
的例子。 head
和tail
都指向同一个实例。
当然不是。
以下是此代码中按顺序发生的情况。
只创建了一个对象,head和tail都引用了同一个对象。
2个引用head
和tail
都被分配给Node
的相同单个实例。
object1=object2 ;
这里Object1对其他的一个引用意味着简单地将object2复制到object1引用的所有地址
只需将object2复制到object1中