Hong
Hong

Reputation: 27

Returning Value from ActionListener

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

Answers (1)

Dev. Joel
Dev. Joel

Reputation: 1137

the variable is uninitialized

 HandleActions h;
 public Game() {
  h =new HandleActions(); //initialize
  ... 
}

Upvotes: 1

Related Questions