2
有一个错误继续运行:JavaFX应用程序保持运行,即使我在主类静态初始化
package app;
import javafx.application.Application;
import javafx.stage.Stage;
public class Test extends Application {
static {
throwAnException();
}
@Override
public void start(Stage primaryStage) throws Exception {
}
public static void main(String[] args) {
launch(args);
}
private static void throwAnException() {
throw new RuntimeException();
}
}
停止:
package app;
import javafx.application.Application;
import javafx.stage.Stage;
public class Test extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
}
public static void main(String[] args) {
throwAnException();
launch(args);
}
private static void throwAnException() {
throw new RuntimeException();
}
}
为什么?
在第一种情况下,程序仍在运行,即使有例外。 在第二种情况下,程序在调用javafx线程之前停止。 静态初始化器应该在主要方法之前运行,对吧? 我的英语差异很大,所以我没写太多。 我希望你能理解我的问题。