Reputation: 27
I have a method that implements ActionListener. At the bottom of the class I have some get methods. However whenever I call the get methods in another class, I get a NullPointerException.
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();
}
}
The console says the error is coming from the h.getTest() call. Is it something to do with the fact that the HandleActions class implements ActionListener. I can return values just fine from other classes.
Upvotes: 0
Views: 764
Reputation: 1137
the variable is uninitialized
HandleActions h;
public Game() {
h =new HandleActions(); //initialize
...
}
Upvotes: 1