为什么调用方法launch(args)等同于调用方法Application.launch(args)

时间:2018-08-02 22:13:04

标签: java javafx

我正在学习Javafx,想知道为什么在此代码中调用launch(args)

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.control.Button;


public class Gui extends Application{

    @Override
    public void start(Stage primaryStage){
        Button btn = new Button("OK");
        Scene scene = new Scene(btn, 200, 250);
        primaryStage.setTitle("My First GUI");
        primaryStage.setScene(scene);
        primaryStage.show();
        primaryStage.setResizable(true);
    }

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

}

等价于我们致电

launch(args);

我搜索并找到了以下答案:“ JavaFX主类是Application的子类型。”但我听不懂。

1 个答案:

答案 0 :(得分:1)

这是因为您使用javafx Application类扩展了gui类。换句话说,您继承了它的所有方法,包括静态void启动。