FXML 简介有示例如何使用 <fx:root> 构建自定义组件。以下是文档中的一些片段:
public CustomControl() {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("custom_control.fxml"));
fxmlLoader.setRoot(this);
fxmlLoader.setController(this);
try {
fxmlLoader.load();
} catch (IOException exception) {
throw new RuntimeException(exception);
}
}
在这里,构造函数正在泄漏“this”,这可能会导致一些不愉快的后果。
在构造函数中将“this”传递给 FXMLLoader 是否安全?如果没有,有什么建议可以使这段代码安全吗?