Я думал, что ошибки Java указывают на серьезные проблемы и не должны обрабатываться.Почему тогда этот код работает нормально?
public static void main(String[] args)
{
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<?> future = executor.submit(() -> {throw new AssertionError();});
while (!future.isDone()) {
}
System.out.println("done");
}
У меня был нереализованный метод, который выдавал ошибку AssertionError, чтобы напомнить мне о ее реализации, но он был просто поглощен без каких-либо признаков того, что что-то серьезно не так.