I have written a little test application that looks like this:
import javafx.application.Application;
import javafx.application.Platform;
import javafx.stage.Stage;
public class Test extends Application {
    public Test() {
        System.out.println("first");
    }
    @Override
    public void init() throws Exception {
        System.out.println("second");
        super.init();
    }
    @Override
    public void start(Stage primaryStage) throws Exception {
        System.out.println("third");
        Platform.exit();
    }
    @Override
    public void stop() throws Exception {
        System.out.println("fourth");
        super.stop();
    }
    public static void main(String[] args) {
        launch(args);
    }
}
The output is:
first
second
third
fourth
Now, I am asking myself where the difference is between using the default constructor or the init method for initialising some required things.
Thanks!
P.S.: This question is not duplicate with this one, because my issue does not handle the initialisation of variables. My question is JavaFX specific!
 
     
     
     
    