我是Java的新手,我在下面找到了這個鏈接列表實現。在主要方法中,我們創建一個名爲theLinkedList的LinkList實例,並使用它我們調用insertFirstLink方法4次。 InsertFirstLink方法的作用是創建一個名爲newLink的Link實例。當我們調用insertFirstLink 4次。在實現鏈接列表時創建具有相同名稱的對象
此方法是否創建4個具有相同名稱的鏈接實例(newLink)? 這怎麼可能? 我們不能用相同的名字創建對象嗎? 我錯過了什麼?爲了理解這部分,我需要學習什麼?
謝謝你們。我明白我的問題。每次執行之後,新的鏈接變量都會被銷燬,但是每個銷燬的變量都有一個引用,它就像一條線。我們總是可以通過這條線找到我們想要的節點。
public class Link {
public String bookName;
public int millionsSold;
public Link next;
public Link(String bookName, int millionsSold) {
this.bookName = bookName;
this.millionsSold = millionsSold;
}
public static void main(String[] args) {
LinkList theLinkedList = new LinkList();
theLinkedList.insertFirstLink("Don Quixote",500);
theLinkedList.insertFirstLink("A Tale of two cities",200);
theLinkedList.insertFirstLink("The Lord Of The Rings",150);
theLinkedList.insertFirstLink("Harry Potter",1000);
}
}
class LinkList {
public Link firstLink;
LinkList() {
firstLink = null;
}
public boolean isEmpty() {
return(firstLink == null);
}
public void insertFirstLink(String bookName, int millionsSold) {
Link newLink = new Link(bookName, millionsSold);
newLink.next = firstLink;
firstLink = newLink;
}
}
變量(不是對象,他們沒有名字)名稱需要在*範圍內是唯一*。 – Kayaman
列表節點沒有名稱。 'newLink'是對新創建對象的**本地**引用。我建議你查看變量*類型*和範圍*。 –
我認爲這個實例是一個對象。但沒有名稱,編譯器如何識別它。你能否給我更多的細節。 –