【发布时间】:2011-04-08 19:17:12
【问题描述】:
我正在开发一个 Applet,它有一个 JButton,我想用它来启用另一个 JButton。但是,当我按下按钮时,出现错误:线程“AWT-EventQueue-1”java.lang.NullPointerException 中的异常。为什么会这样?似乎当我运行 Applet 时,全局变量没有被实例化(即它们都是“null”)。在另一个程序中,一切正常,我在执行此操作方面找不到两者之间的任何区别。
这是我的一些代码:
public class implementation2 extends Applet implements ActionListener {
private static final long serialVersionUID = -4370650602318597069L;
...
public JButton coreButton, testButton;
...
public void init() {
...
final JButton testButton = new JButton("Test);
testButton.addActionListener(this);
...
final JButton coreButton = new JButton("CORE");
coreButton.addActionListener(this);
coreButton.setEnabled(false);
...
}
...
public void actionPerformed(final ActionEvent event) {
if(event.getActionCommand() == "Test") {
coreButton.setEnabled(false);
}
...
如果有人能指出我修复我的代码的方向,那将不胜感激!谢谢!
【问题讨论】:
-
你应该有一个堆栈跟踪 - 查看它以查明发生了什么。您还应该开始使用普通的 Java 命名约定(类应该使用 PascalCase),并使用
equals()而不是==比较字符串。