我不明白为什么会收到此NullPointerException。我从外观迥异的代码开始(并改进为您所看到的内容),试图修复该错误,但我只是无法弄清发生了什么。

非常感谢所有帮助:

final JComboBox modelName = null;

//Model ComboBoxModel
final DefaultComboBoxModel termModel = new DefaultComboBoxModel(new String[]{
    "Choose One...", "Hypercom", "DejaVoo", "Nurit", "Verifone"});

...

// model drop-down
    modelName.setModel(termModel);  //getting nullPointerException on this line

    modelName.addActionListener(this);

    modelPanel.add(modelName);

...

@Override
public void actionPerformed(ActionEvent e) {
    if ("Hypercom".equals(modelName.getSelectedItem())){
        termName.setModel(hSpecModel);
    } else if ("Deja Voo".equals(modelName.getSelectedItem())){
        termName.setModel(dSpecModel);
    } else if ("Nurit".equals(modelName.getSelectedItem())){
        termName.setModel(nSpecModel);
    } else if ("Verifone".equals(modelName.getSelectedItem())){
        termName.setModel(vSpecModel);
    } else {
        termName.setModel(slctAbove);
    }
}

最佳答案

final JComboBox modelName = null; // !!!!!


当您尝试使用此变量时,您真的不应该奇怪为什么会得到NPE:

modelName.setModel(termModel);

10-04 18:00