2014-06-11 7 views
7

Der Startpunkt für eine JavaFX-Anwendung ist die Startmethode. Aber in den JavaFX-Beispielanwendungen ist auch eine Hauptmethode enthalten. Was ist die Hauptmethode in diesem speziellen Fall und warum musste start() als Ausgangspunkt für JavaFX definiert werden? Können wir nicht einfach die Hauptmethode verwenden, um einen Startpunkt wie Swings zu definieren?Warum wird die Hauptmethode in der JavaFX-Anwendung verwendet, wenn start() bereits existiert

Eine Probe Hello World Anwendung:

public class HelloWorld extends Application { 

    @Override 
    public void start(Stage primaryStage) { 
     Button btn = new Button("Hello World"); 
     btn.setOnAction(new EventHandler<ActionEvent>() { 
      @Override 
      public void handle(ActionEvent event) { 
       System.out.println("Hello World!"); 
      } 
     }); 

     StackPane root = new StackPane(); 
     root.getChildren().add(btn); 

     Scene scene = new Scene(root, 300, 250); 

     primaryStage.setTitle("Hello World!"); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 
    } 

    public static void main(String[] args) { 
     launch(args); 
    } 
} 

Antwort

11

Von Oracle Docs,

Die main() Methode ist nicht für JavaFX Anwendungen erforderlich, wenn die JAR Datei für die Anwendung mit dem JavaFX Packager erstellt wird Werkzeug, welches den JavaFX Launcher in die JAR Datei einbettet. Es ist jedoch nützlich, die main() -Methode, damit Sie JAR-Dateien ausführen können, die ohne den JavaFX Launcher erstellt wurden, z. B. wenn eine IDE in die JavaFX-Tools nicht vollständig integriert sind. Swing Anwendungen, die JavaFX-Code einbetten, benötigen die main() -Methode.

Verwandte Themen