为什么我得到NullPointerException

时间:2013-11-30 07:04:07

标签: java nullpointerexception jtextfield

我的名字是罗素!

所以我收到了这些错误:

Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at PatientPanel.<init>(PatientPanel.java:30)

第30行是这一行:add(fNameField);

我不确定为什么。我之前从未使用JTextField ..所以我可能做错了什么。哎呀,我是这个整个编程的新手。所以我可能做了很多错事!我查看了其他 nullPointerException 案例,但找不到处理JTextField

的案例

我觉得这很简单,但就像我说的,我是新人!

非常感谢任何帮助!

import javax.swing.*;
import java.awt.*;

public class PatientPanel extends JPanel
{

    private JLabel fName = new JLabel("First Name: ");
    private JLabel lName = new JLabel("Last Name: ");
    private JTextField fNameField;
    private JTextField lNameField;


    public PatientPanel()
    {
    setLayout(new GridLayout(2,1));
    add(fName);
    add(fNameField);
    add(lName);
    add(lNameField);
    }
}

1 个答案:

答案 0 :(得分:2)

private JTextField fNameField;
add(fNameField);

在尝试调用函数之前,你永远不会设置fNameField的值,因此它的值为null并且add不起作用。 您可以使用

private JTextField fNameField = new JTextField(...);

并使用lNameField

执行相同的操作