JavaFX的生命周期
在JavaFX中,Application类负责管理程序的生命周期。程序的生命周期包含的五步:
- 建立
Application
类的实例。 - 调用
init
方法。默认的init
方法什么也不做,但我们可以重新该方法,以实现特定的初始化任务。 - 调用
start
方法。这是一个抽象方法,因此我们创建的Application
的子类必须实现该方法。start
方法用于创建并显示UI接口。 - 消息处理,完成用户任务,等待应用程序结束。
- 调用
stop
方法。该方法提供了在程序结束前完成一些必要任务的机会,如内存释放等。
主线程和UI线程
public class FX_Life extends Application {
public static void main(String[] args) {
System.out.println("main:主线程----->" + Thread.currentThread().getName());
launch(args);
}
@Override
public void init() throws Exception {
super.init();
System.out.println("生命初始化:init,不是UI线程,只能处理一些逻辑处理--->" + Thread.currentThread().getName());
}
@Override
public void start(Stage primaryStage) throws Exception {
System.out.println("生命开始: start, UI线程----->" + Thread.currentThread().getName());
primaryStage.show();
}
@Override
public void stop() throws Exception {
System.out.println("生命结束: stop, UI线程--->" + Thread.currentThread().getName());
super.stop();
}
}
运行结果如下:
main:主线程----->main
生命初始化:init,不是UI线程,只能处理一些逻辑处理--->JavaFX-Launcher
生命开始: start, UI线程----->JavaFX Application Thread
生命结束: stop, UI线程--->JavaFX Application Thread
「真诚赞赏,手留余香」