Встречается на собеседованиях • сегодня

Что такое Multiple Bug Exception

Multiple Bug Exception (MBE) — это ситуация, когда несколько исключений возникают одновременно или последовательно, но обрабатываются как одно. В Java такое поведение можно наблюдать при использовании CompletableFuture или в цепочках исключений (suppressed exceptions).

Пример с try-with-resources, где подавленные исключения добавляются к основному:

java
try (AutoCloseable resource = () -> { throw new IOException("Resource error"); }) {
    throw new RuntimeException("Main error");
} catch (Exception e) {
    System.out.println(e); // Main error
    for (Throwable t : e.getSuppressed()) {
        System.out.println("Suppressed: " + t); // Resource error
    }
}

Ключевые моменты:

  1. В Java 7+ подавленные исключения сохраняются через addSuppressed()
  2. CompletableFuture.get() выбрасывает только одно исключение, даже если их было несколько
  3. Важно проверять getSuppressed() для полного анализа ошибок
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы