I am trying to change one of my columns and its cell values from another class however i keep getting a null pointer exception when java try's to execute that line OverviewController.getOverviewController.returnStatusColumn.setCellValueFactory(
    cellData -> cellData.getValue().getStatusProperty());, I have removed all irreverent code
TableView Class:
@FXML 
private TableView<Task> taskTable;
@FXML
private TableColumn<Task, String> statusColumn;
private final static OverviewController controller = new OverviewController 
();
public static OverviewController getOverviewController() {
    return controller;
}
public void setMainApp(MainApp mainApp) {
    this.mainApp = mainApp;
    taskTable.setItems(mainApp.getTaskData());
    taskTable.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    taskTable.setPlaceholder(new Label(""));
}
public TableView<taskTable> returnTasks() {
    return taskTable;
}
public TableColumn<taskTable, String> returnStatusColumn() {
    return statusColumn;
}
@Override
public void initialize(URL location, ResourceBundle resources) {
        statusColumn.setCellValueFactory(cellData -> 
cellData.getValue().getStatusProperty());
}
@FXML
public void createTask(ActionEvent event) throws InterruptedException, 
IOException, ParseException {
    thread = new MyThread();
    thread.main(null);
    statusColumn.setCellValueFactory(cellData -> 
cellData.getValue().getStatusRunningProperty());
    statusColumn.setStyle("-fx-text-fill: green; -fx-font-weight: bold;");
    taskTable.refresh();
}
@FXML
public void stopTasks() {
    statusColumn.setCellValueFactory(cellData -> 
cellData.getValue().getStatusProperty());
    statusColumn.setStyle("-fx-text-fill: red; -fx-font-weight: bold;");
    taskTable.refresh();
}
This class works fine when i want to update the table columns, if i click stop tasks method (which is linked to a button) the status column gets updated to the stop label which i want to do, same with start tasks method.
Random class where i want to update the Table view status column:
public class UpdateTable {
public static void main(String[] args) {
    OverviewController.getOverviewController.returnStatusColumn.setCellValueFactory(
    cellData -> cellData.getValue().getStatusProperty());
    OverviewController.getOverviewController().returnTasks().refresh();
    }
}
TableView Data:
//Status Information
private final SimpleStringProperty status;
private final SimpleStringProperty statusRunning;
public Task() {
    this(null, null);
}
    public Task() {
        this.statusRunning = new SimpleStringProperty("Running");
        this.status= new SimpleStringProperty("Stop");
    }
    public StringProperty getStatusProperty( ) {
        return status;
    }
    public StringProperty getStatusRunningProperty( ) {
        return statusRunning;
    }
}
If i ran the random class it will lead to a null pointer exception in particular this line: 
OverviewController.getOverviewController().returnStatusColumn().setCellValueFactory(cellData -> cellData.getValue().getStatusProperty());
Have i done this completely the wrong way? I just want to be able to update the Table view column cells from a different class.
 
    