在 Java 中的同一包中启动独立应用程序
从父应用程序中启动独立应用程序可能是各种场景中的常见要求。然而,当独立应用程序都属于同一个包时,这就带来了挑战。
使用 myClass2.launch("") 从 myClass1 启动 myClass2 的传统方法将导致错误,因为 launch 是旨在在应用程序启动时调用一次。
为了解决这个问题,更合适的方法是通过为每个模块创建单独的类来重构设计,而不是扩展应用程序 班级。这些类可以根据需要进行实例化和管理。
重构应用程序设计
创建常规类,例如 FirstModule 和 SecondModule,以封装每个独立应用程序的功能.
public class FirstModule { private BorderPane view; public FirstModule() { // Create and configure the view } public Parent getView() { return view; } }
实例化和管理模块
模块可以直接在主应用程序中实例化和管理。
FirstModule firstModule = new FirstModule(); Scene scene = new Scene(firstModule.getView()); Stage stage = new Stage(); stage.setScene(scene); stage.show();
创建独立应用程序
对于需要的模块要作为独立应用程序运行,可以使用单独的应用程序子类创建。
public class FirstApplication extends Application { @Override public void start(Stage primaryStage) { Scene scene = new Scene(new FirstModule().getView()); primaryStage.setScene(scene); primaryStage.show(); } }
将模块集成到复合应用程序中
模块也可以集成到更大的复合应用程序中。
public class CompositeModule { private HBox view; public CompositeModule() { // Create buttons to launch individual modules } public Parent getView() { return view; } } public class CompositeApplication extends Application { @Override public void start(Stage primaryStage) { Scene scene = new Scene(new CompositeModule().getView()); primaryStage.setScene(scene); primaryStage.show(); } }
这个方法允许您在同一个包中拥有多个独立应用程序,并从其他模块或应用程序中无缝启动它们。
以上是如何在同一个包中启动多个独立的 Java 应用程序?的详细内容。更多信息请关注PHP中文网其他相关文章!