public Splash_Controller(
      final JavaFX_Server_Template main,
      Splash_Model model,
      Splash_View
          view) { // final JavaFX_App_Template main -> Da die Main-Klasse sich selbst übergibt, kann
                  // der Controller jetzt so auf Methoden in der Main-Klasse zugreifen
    super(model, view);

    // We could monitor the progress property and pass it on to the progress bar
    // However, JavaFX can also do this for us: We just bind the progressProperty of the
    // progress bar to the progressProperty of the task.
    view.progress
        .progressProperty()
        .bind(
            model.initializer
                .progressProperty()); // Aktualisieren(Listener)/Verbinden den Ladebalken aus dem
                                      // model mit dem view

    // The stateProperty tells us the status of the task. When the state is SUCCEEDED,
    // the task is finished, so we tell the main program to continue.

    // Below are two equivalent implementations - only one of these should be used!

    // Using an anonymous class
    //        model.initializer.stateProperty().addListener(
    //                new ChangeListener<Worker.State>() {
    //                    @Override
    //                    public void changed(
    //                            ObservableValue<? extends Worker.State> observable,
    //                            Worker.State oldValue, Worker.State newValue) {
    //                        if (newValue == Worker.State.SUCCEEDED)
    //                            main.startApp();
    //                    }
    //                });

    // Using a lambda expression
    model
        .initializer
        .stateProperty()
        .addListener( // Beobachten den Ladebalken
            (observable, oldValue, newValue) -> {
              if (newValue
                  == Worker.State
                      .SUCCEEDED) // Wenn Ladebalken fertig geladen wurde (resourcen jetzt geladen),
                                  // starte im JavaFX_App_Template die methode "startApp()" welche
                                  // die MVC-Komponenten lädt
              main
                    .startApp(); // Über die im Parameter übergebenen Objekte (bzw. das Main-Klasse
                                 // Objekt selbst) kann jetzt auf die Methode startApp() zugegriffen
                                 // werden
            });
  }