Очевидно, что в вашей программе есть, по крайней мере, ошибка, которую вы можете попытаться устранить с помощью отладчика.
Что касается вашего вопроса, исключение прекратит работу вашей программы, если она не будет обнаружена.Поэтому, если вы всегда выбрасываете свои исключения, в том числе в методе main, то когда это произойдет, программа завершит работу.
Однако, как сказал Mac в комментарии
Приложение Swingимеет цикл событий в пути.Цикл событий ловит Throwable (я полагаю), поэтому он не может точно контролировать то, что поймано обычным способом.