问题是没有将控制器的初始化为预期问题的质询者。
Java 8中FXMLLoader的操作有点奇怪。
如果您
initialize()
在Controller中定义了无参数方法且未实现Initializable
接口,则FXML加载程序仍将自动调用initialize方法。如果相反,您
public void initialize(URL url, ResourceBundle rb)
在Controller中定义了参数化方法,则FXML加载程序将不会自动调用initialize方法, 除非 您的控制器也实现了该Initializable
接口。
由于问题中的代码使用的是参数化的initialize方法,并且也未实现Initializable,因此不会发生初始化。



