CodeGym
AI Academy
프로모션
CodeGym University
학습
강좌
과제
설문 & 퀴즈
게임
도움말
일정
커뮤니티
사용자
포럼
채팅
아티클
성공 사례
활동
후기
구독
라이트 테마

강의

  • 리뷰
  • 회사 소개
시작
학습 시작
Start learning now
  • 진행 상황
  • 코스
  • 퀘스트 맵
  • 레슨
  • IOException 및 FileNotFoundException: 오류 처리

    JAVA 25 SELF
    레벨 38,레슨 0
    Java에서 IO 예외의 계층 구조가 어떻게 되어 있는지, IOException과 그 하위 클래스인 FileNotFoundException의 차이, 이들이 언제 발생하고 어떻게 올바르게 처리하는지 알아봅니다. catch 블록의 순서, 파일 읽기/쓰기 실습, 로깅 팁, 그리고 가장 흔한 오류를 간단히 정리한 표도 살펴봅니다. 또한 체크 예외(checked exceptions), 키워드 try, catch, finally, throws와 try-with-resources 기법을 다룹니다.
    사용 가능
  • 파일 및 디렉터리 존재 여부 확인

    JAVA 25 SELF
    레벨 38,레슨 1
    Java에서 파일이나 폴더가 있는지 확인하는 방법: 클래스 File의 메서드 exists(), isFile(), isDirectory()와, Path와 Files를 사용하는 현대적인 NIO 접근 — 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
    이 강의에서는 운영 체제(OS)가 권한을 어떻게 관리하는지(POSIX 및 Windows의 ACL), Java에서 예외 AccessDeniedException이 왜 발생하는지, Files.isReadable(), Files.isWritable(), Files.isExecutable() 검사를 언제 어떻게 사용할지, 그리고 TOCTOU가 왜 위험한지 다룹니다. 또한 “안전한 쓰기” 패턴을 보여 줍니다: 임시 파일 + StandardCopyOption.ATOMIC_MOVE를 통한 원자적 이동, try- catch로 올바르게 오류를 처리하고 로깅( java.util.logging)을 수행합니다. 마지막에는 실용적인 팁과 흔한 실수를 정리합니다.
    사용 가능
  • 파일 작업을 위한 모범 사례

    JAVA 25 SELF
    레벨 38,레슨 4
    Java에서 파일 시스템을 신뢰성 있고 안전하게 다루기 위한 실용 가이드: 예외의 올바른 처리( try/ catch, IOException, AccessDeniedException 등 상황별 대응), Files/ Path API의 신중한 사용과 백업( Files.copy + StandardCopyOption.REPLACE_EXISTING), 임시 파일( Files.createTempFile), 무결성 검사( MessageDigest.getInstance( "SHA-256")), 그리고 TOCTOU 창 최소화와 try-with-resources의 광범위한 적용. 왜 빈 catch가 위험한지, 권한( File.canRead()/ File.canWrite())을 어떻게 다루는지, 그리고 File( "data.txt") 같은 상대 경로가 어떤 위험을 초래하는지도 알게 됩니다.
    사용 가능
학습
  • 등록
  • Java 과정
  • 과제 도움
  • 요금
  • Java 문법
커뮤니티
  • 사용자
  • 아티클
  • 포럼
  • 채팅
  • 성공 사례
  • 활동
  • 제휴 프로그램
회사
  • 회사 소개
  • 연락처
  • 후기
  • 보도자료실
  • CodeGym for EDU
  • FAQ
  • 지원
CodeGymCodeGym 은(는) 처음부터 Java 프로그래밍을 배우기 위한 온라인 코스입니다. 이 과정은 초보자가 Java를 마스터하기에 완벽한 방법입니다. 즉시 검증 기능이 포함된 1200개 이상의 과제와 Java 기초 이론의 필수 범위를 제공합니다. 학습 성공을 돕기 위해 퀴즈, 코딩 프로젝트, 효율적인 학습법 관련 콘텐츠, Java 개발자 경력 관련 자료 등 동기 부여 기능들을 구현했습니다.
팔로우하기
인터페이스 언어
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語
한국어
Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"Programmers Are Made, Not Born" © 2026 CodeGym
MastercardVisa
"Programmers Are Made, Not Born" © 2026 CodeGym