我希望将嵌套的静态类用作封闭类的GUI元素的actionListener
。
我做了这样的事情:
public class OuterClass {
public static void myImplementation() {
OuterClass.StartupHandler startupHandler = new OuterClass.StartupHandler();
exitMenuItem.addActionListener(startupHandler); // error Line
}
public static class StartupHandler implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
//throw new UnsupportedOperationException("Not supported yet.");
if (e.getSource() == exitMenuItem) {
System.exit(1);
} else if (e.getSource() == helpMenuItem) {
// show help menu
}
}
}
}
但是当我调用此代码时,我在//错误行获得了NullPointerException
。
这是做正确的方法吗?或者有些东西我失踪了?
答案 0 :(得分:0)
exitMenuItem
是否已初始化?我打赌它是null
。
如果您包含更多类(例如您声明exitMenuItem
的位置),我们会更容易指出问题。