2013-09-01 26 views
0

所以我正在研究一個Java程序,每當我運行它,我得到一個錯誤「線程中的異常」主「java.lang.NullPointerException」。當我仔細觀察它時,看起來它是由參考變量數組引起的。下面是導致該問題的代碼:我將如何創建一個對象引用變量的數組?

public class agendafunctions { 
static String input = "true"; 
agendaitem item[] = new agendaitem[5]; 
public agendafunctions() { 
    item[0].name = "one"; 
    item[1].name = "two"; 
    item[2].name = "three"; 
    item[3].name = "four"; 
    item[4].name = "five"; 
} 

名稱是類agendaitem一個變量。從我在其他地方讀到的內容來看,錯誤是由程序試圖使用具有空值的變量引起的。但是,當我添加一個值時,它說它不能從字符串或任何類型的議程項目轉換。誰能幫忙?

+0

請遵守Java約定,並用大寫字母開始類名稱。小寫字母是變量和方法! –

回答

7

您需要首先實例化這些對象。聲明一個對象數組只會給你一個空數組。試圖在這些空值上設置屬性會給你一個NullPointerException。

之前設置任何名字,你需要運行:

for (int i = 0; i < item.length; i++) 
    item[i] = new agendaitem(); 

此外,你應該改變你的類名AgendaItem不遵守正確的Java風格。

0

嘗試增加這個使用它們之前:

for(int i = 0; i< item.length; i++) { 
    item[i] = new agendaitem(); 
} 

當你創建一個對象的數組,其所有值都爲空(原語是默認原始值)。在使用之前,您必須手動初始化每個索引(或通過循環)。

相關問題