这里的新人。我在将文本打印到JTextArea
的方法上遇到麻烦。addToDisplay
方法在本机GameWindow
类中可以正常工作。这里是:
public class GameWindow extends JFrame implements KeyListener {
JTextArea displayArea;
public GameWindow() {
...
this.addToDisplay(""); //Works fine
}
public void addToDisplay(String newString) {
displayArea.append("\n" + newString);
displayArea.selectAll();
}
}
在同一包的另一个类中调用该方法时,它将引发
java.lang.NullPointerException
public class Duelist {
private GameWindow window;
public Duelist(String n) {
...
}
public void dueling(Duelist opponent) {
...
window.addToDisplay(""); //Exception occurs here
}
}
请告诉我如何摆脱异常。如果您需要更多信息,请在评论中告诉我。
最佳答案
使用前,必须在Duelist类中初始化GameWindow
GameWindow window=new GameWindow();
对于构造函数中的ex或调用该方法之前所需的任何位置
public Duelist(String n) {
window=new GameWindow();
...
}