0
我有一个实现ActionListener的方法。在课程的最后,我有一些get方法。但是每当我在另一个类中调用get方法时,我都会得到一个NullPointerException。从ActionListener返回值
package com.FishingGame.Screen;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class HandleActions implements ActionListener{
private boolean goFishing = false, sell = false, checkW = false;
private int test = 12;
public HandleActions(){
}
void resetAllVars(){
goFishing = false;
sell = false;
checkW = false;
}
public void actionPerformed(ActionEvent e) {
String bSource = e.getActionCommand();
resetAllVars();
if(bSource == "go fishing"){
System.out.println("1");
goFishing = true;
}else if(bSource == "sell"){
System.out.println("2");
sell = true;
}else if(bSource == "check weather"){
System.out.println("3");
checkW = true;
}
}
public boolean getGoFishing(){
return goFishing;
}
public boolean getSell(){
return sell;
}
public boolean getCheckW(){
return checkW;
}
public int getTest(){
return test;
}
}
public class Game implements Runnable {
HandleActions h;
Window w;
public Game() {
w = new Window(600, 400, "Game");
w.add(w.mainScreen());
w.setVisible(true);
System.out.println(h.getTest());
}
Thread thread = new Thread(this);
@Override
public void run() {
}
public static void main(String args[]) {
Game g = new Game();
}
}
控制台说,错误是从h.getTest()调用的到来。这是否与HandleActions类实现ActionListener这一事实有关。我可以很好地从其他类返回值。
初始化H作为HandleActions H =新HandleActions(); –