✅ Checked exceptions (проверяемые) - компилятор *заставляет* обработать их - нужно либо try/catch, либо throws в сигнатуре метода - пример: FileNotFoundException, IOException ⚠️ Unchecked exceptions (непроверяемые) - компилятор *не требует* обработки - чаще всего это ошибки логики в коде - пример: NullPointerException, IllegalArgumentException, IndexOutOfBoundsException Запомни правило: **Checked = “предвидимая проблема” (например, файл не найден). Unchecked = “косяк в коде” (например, null, неправильный индекс).** @javarush