JavaRush
Акция
Университет
Java FullStack
Python FullStack
new
Web FullStack
new
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • IOException и FileNotFoundException: обработка ошибок

    JAVA 25 SELF
    38 уровень,0 лекция
    Как устроена иерархия IO-исключений в Java, в чём разница между IOException и его потомком FileNotFoundException, когда они возникают и как их правильно обрабатывать. Разберём порядок блоков catch, практику с чтением/записью файлов, советы по логированию, а также краткую таблицу наиболее частых ошибок. Затронем checked-исключения, ключевые слова try, catch, finally, throws и приём try-with-resources.
    Открыта
  • Проверка существования файлов и директорий

    JAVA 25 SELF
    38 уровень,1 лекция
    Как в Java проверить, есть ли файл или папка: класс File со своими методами exists(), isFile(), isDirectory() и современный NIO-подход через Path и Files — Files.exists(), Files.isRegularFile(), Files.isDirectory(). Обсудим проблему TOCTOU и почему проверка не заменяет обработку ошибок: даже после exists() вы можете получить FileNotFoundException или AccessDeniedException, поэтому всегда используйте try-блоки и по возможности try-with-resources. Плюс практика: чтение файла при наличии, создание директории через Files.createDirectory() и Files.createDirectories(), работа с относительными и абсолютными путями.
    Открыта
  • Обработка повреждённых файлов, восстановление данных

    JAVA 25 SELF
    38 уровень,2 лекция
    Как распознать «битые» файлы по исключениям ( EOFException, MalformedInputException, ZipException, StreamCorruptedException), что делать при несоответствии формата, и какие стратегии восстановления использовать: логирование и уведомление пользователя, частичное чтение до ошибки, резервные копии, контрольные суммы ( SHA-256). Практика с чтением до EOF, корректная работа с кодировками и разбор типичных ошибок (валидация, try-with-resources, аккуратная перезапись).
    Открыта
  • Права и доступ к файловой системе

    JAVA 25 SELF
    38 уровень,3 лекция
    В этой лекции разбираем, как ОС управляет правами доступа (POSIX и ACL на Windows), почему в Java возникает исключение AccessDeniedException, как и когда использовать проверки Files.isReadable(), Files.isWritable(), Files.isExecutable(), и чем опасен TOCTOU. Показан шаблон «безопасной записи»: временный файл + атомарный перенос через StandardCopyOption.ATOMIC_MOVE, корректная обработка ошибок через try- catch и логирование ( java.util.logging). В конце — практические советы и типичные ошибки.
    Открыта
  • Best practices работы с файлами

    JAVA 25 SELF
    38 уровень,4 лекция
    Практическое руководство по надёжной и безопасной работе с файловой системой в Java: корректная обработка исключений ( try/ catch, отдельные реакции на IOException, AccessDeniedException), аккуратное использование API Files/ Path и резервных копий ( Files.copy с StandardCopyOption.REPLACE_EXISTING), временных файлов ( Files.createTempFile), контроль целостности ( MessageDigest.getInstance( "SHA-256")), а также минимизация TOCTOU-окон и повсеместное применение try-with-resources. Вы узнаете, почему пустой catch опасен, как работать с правами доступа ( File.canRead()/ File.canWrite()) и чем чреваты относительные пути вроде File( "data.txt").
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush