Этого, как правило, достаточно, пока вы не начнете использовать фоновые потоки для расчетов, сбора данных и т. Д. Затем вы должны быть осторожны, чтобы убедиться, что вы находитесь на EDT, прежде чем изменять компонент свинга или его модель. *
Вы можете проверить, выполняете ли вы на EDT, с помощью:
if (SwingUtilities.isEventDispatchThread()) {
// Yes, manipulate swing components
} else {
// No, use invokeLater() to schedule work on the EDT
}
Также см. Класс SwingWorker для получения подробной информации о том, как передать работу фоновому потоку и обработать результаты в EDT
.