Я нашел этот ответ на SO и был смущен.Нужно ли использовать промежуточный метод «dispose()» в ActionListener?
У нас есть вопрос о том, кто хочет знать, как избавиться от JDialog в ActionListener.
try this way:
exit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
exitActionPerformed(evt);
}
});
and then
private void exitActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
}
Это код, что человек, который ответил отправил (here's ссылку на вопрос)
Вот что я делаю в моем собственном коде:
buttonCancel.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
dispose();
}
});
Но я действительно беспокоит ответ выше. Я что-то делаю неправильно или ничего не меняет, если так делается? Если это не повлияет, вы знаете, почему человек ответил, используя промежуточный метод?
Спасибо
Нет никакой разницы, он просто вызывает отдельный метод, чтобы расположить диалог и ничего больше. –
Первым вариантом является то, как инструменты для разработчиков генерируют код. Это облегчает вставку больших фрагментов кода, которые должны быть предпочтительно помещены во внешний класс. Семантической разницы нет, и вы можете опустить эту косвенность, если вы делегируете один существующий метод, например 'dispose()' anyway. Это имело значение, если 'exitActionPerformed' не был' private' ... – Holger