0

我有一个 JComponent 引用,就像JComponent allComp[]; 现在我想这个数组的每个元素都包含不同类型的组件,如下所示,

allComp[0] = new JComboBox();

allComp[1] = new JButton();

allComp[2] = new JMonthChooser();

我正在尝试获取空指针异常。这可能吗??如果可以怎么办??请在这个问题上帮助我。谢谢提前

4

3 回答 3

0

您需要创建数组对象本身:

JComponent[] allComp = new JComponent[ARRAYSIZE]; 
于 2013-09-26T11:31:09.603 回答
0

你可能还没有初始化allComp,它是null.

JComponent allComp[] = new JComponent[MAX_COMPONENTS];

List无论如何,如果您事先不知道组件的数量,建议使用 a而不是数组。

List<JComponent> allComp = new ArrayList<>();
allComp.add(new JComboBox());
allComp.add(new JButton());
allComp.add(new JMonthChooser());
于 2013-09-26T11:31:26.227 回答
0

我假设您尚未初始化数组

int arraySize = 20;
JComponent allComp[] = new JComponent[arraySize];

做类似的事情

JComponent allComp[]

只“声明”该对象,这有点像一个承诺“在这段代码中的某个地方我将使用这个对象,但我还没有决定我想要它是什么,所以我没有定义它”。

“初始化”是实际创建对象所需执行的操作。通常你用

new

关键词。

于 2013-09-26T11:34:20.993 回答