Привет! Пишу симулятар биткоена(оригинально). Словил проблему и задался вопросом: как связать Controller и Tactic?
import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.Label;

public class Controller {

    @FXML
    private Button appIncome;

    @FXML
    private Label curMoney;

    @FXML
    private Label curIncome;

    @FXML
    void initialize() {
        appIncome.setOnAction(e -> {
             // ??????????
        });
    }
}
public class Tactic  implements Runnable{
    private Strategy strategy;
    private User user = new User();
    private double money = user.getMoney();
    private double income = user.getIncome();
    private int speed = user.getSpeed();

    Tactic(Strategy strategy) {
        this.strategy = strategy;
    }

    private double upgradeIncome(){
        return strategy.upgradeIncome(income);
    }

    private int upgradeSpeed(){
        return strategy.upgradeSpeed(speed);
    }

    @Override
    public void run() {
        while(true){
            //income = upgradeIncome();
            money += income;
            System.out.println((int)money);
            try {
                Thread.sleep(speed);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}
Надобна чтоб и кнопки работали и labels менялися. При нажатии на кнопку должен срабатывать метод upgradeIncome(); пока что запихнул всё в одно место. Надеюсь вы не откажете в предъявлении советиков =)