java - 在这个 JavaFX 示例代码中,Stage 是如何实例化的?

标签 java javafx

这是一个简单的 JavaFX 起点。

DemoApp继承自Application。应用程序有一个抽象方法,需要实现。这就是@Overriden。

令我困惑的是该方法的参数。它有一个类类型和一个名称。对吗?

但是如果没有= new Stage();”,“stage”这个名字是如何实例化来创建对象的呢?它只是“Stage stage”而不是“Stage stage = new”阶段();“

public class DemoApp extends Application {
    @Override
    public void start(Stage stage) throws Exception {

    }
}

最佳答案

您的类似于Java ,由 classloader 执行。 。这个classloaser的作用是通过reflection执行start函数,以及您的中可用的其他函数(如果需要)。 对于 JavaFX,Stage 已实例化为参数,您可以使用它来显示 Scene。所以你不必担心。 您可以阅读 template设计模式和IoC ,它将帮助您理解背后的原理。

关于java - 在这个 JavaFX 示例代码中,Stage 是如何实例化的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59148303/

相关文章:

java - 如何用最大允许出现次数替换连续多次出现的字符?

JavaFX OSX WebView CSS 不透明度不起作用

java - 如何使用套接字制作JavaFX Chat应用程序?

java - 更有效地解析 json?

java - 双屏应用

JavaFX TextArea如何使用自动换行符设置文本

java - OpenJDK 无法在 jar 中找到主类,而 OracleJDK 可以

java - 为什么 JavaFX 包含重复的颜色常量?

java - 如何使用maven下载具有所有依赖项的jar?

java - Android 中的 Nanohttpd 不提供文件服务