У меня есть класс, который реализует Initializingable.JavaFx вызов супер метод после супер инициализации
public abstract class ExampleClass implements Initializable {
public void ExampleClass() {
// Load FXML
}
@Override
public void initialize(URL location, ResourceBundle resources) {
// Initialize stuff
}
public void afterInitialize() {
// Do things that are reliant upon the FXML being loaded
}
}
Я тогда продлить этот абстрактный класс:
public class ExampleSubclass extends ExampleClass {
public ExampleSubclass() {
super(/* real code has params */);
this.afterInitialize(); // Problem here
}
}
Однако, когда я называю afterInitialize(), он ведет себя так, как будто FXML в абстрактном классе еще не был загружен. Это меня смущает, поскольку я сначала называю конструктором super(), поэтому я считаю, что FXML должен быть уже загружен.
Что я делаю неправильно?
Заранее спасибо.
Почему п ot вызывает 'this.afterInitialize();' внутри 'initialize (.., ...);'? Только тогда вы уверены, что FXML успешно загружен. Ваш вопрос интересен. – GOXR3PLUS
Как правило, это то, что я бы сделал, но мне нужно передать параметры из 'ExampleSubclass' в' afterInitialize() '(вероятно, следовало бы указать, что в вопросе, мой плохой) – user3668541
Фактически, предоставленный здесь ответ отличный, i din даже не знал о аннотации @ @ PostConstruct. – GOXR3PLUS