我有這樣JComponent allComp[];
現在我想這個陣列的每個元素中的JComponent參考保持不同類型的如下面組分,添加各種類型的部件的成一個JComponent參考陣列
allComp[0] = new JComboBox();
allComp[1] = new JButton();
allComp[2] = new JMonthChooser();
我想越來越空指針異常。這可能嗎??如果可能怎麼樣? 請幫我解決這個問題。 感謝推進
我有這樣JComponent allComp[];
現在我想這個陣列的每個元素中的JComponent參考保持不同類型的如下面組分,添加各種類型的部件的成一個JComponent參考陣列
allComp[0] = new JComboBox();
allComp[1] = new JButton();
allComp[2] = new JMonthChooser();
我想越來越空指針異常。這可能嗎??如果可能怎麼樣? 請幫我解決這個問題。 感謝推進
您可能還沒有初始化allComp
和它的null
。
JComponent allComp[] = new JComponent[MAX_COMPONENTS];
無論如何,這是建議使用List
不是數組的,如果你不事先知道組件的數量做。
List<JComponent> allComp = new ArrayList<>();
allComp.add(new JComboBox());
allComp.add(new JButton());
allComp.add(new JMonthChooser());
您需要創建數組對象本身:
JComponent[] allComp = new JComponent[ARRAYSIZE];
我認爲你沒有初始化數組
int arraySize = 20;
JComponent allComp[] = new JComponent[arraySize];
做像
JComponent allComp[]
東西只有「聲明」的對象,這是有點像一個承諾「的地方在這段代碼中,我將使用這個對象,但是我還沒有決定我想要它是什麼,所以我把它放在了不確定的地方。「
「初始化」是您需要做的實際創建對象。通常你用
new
關鍵字。
你還記得初始化數組嗎?ie allComp = new JComponent [3]?我也推薦使用List來替代;) – MadProgrammer
哦,是的......知道了......實際上編輯沒有給出添加的建議。這就是我忽視的原因。這似乎是一個愚蠢的問題。 –
謝謝反正:) –