这是代码:
addCube = new JButton("Add Cube");
addCube.addKeyListener(kl);
addCube.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
cubes.add(cube);
}
});
panel.add(addCube);
frame.add(panel, BorderLayout.NORTH);
其中panel是JPanel,frame是JFrame。当我执行代码时,我收到以下错误消息:
线程“main”中的异常java.lang.NullPointerException at cg2k15.CG2K15.main(CG2K15.java:91)
第91行是panel.add(addCube);
我做错了什么? :/
答案 0 :(得分:1)
你的addCube对象显然不是null,因为它已经初始化,看起来你忘了初始化你的面板。
答案 1 :(得分:0)
谢谢你们。结果是问题是我在主方法下直接做了一切。我读到构造函数不应该初始化静态字段。按钮应该是框架的私有实例字段,主要方法不应该处理它们。在我创建另一个类来处理框架后,它解决了问题! :)