인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

널개짱님의 프로필 이미지

작성한 질문수

기초 탄탄! 독하게 시작하는 Java - Part 2 : OOP와 JVM

예외 처리 강의 내용 관련 질문

해결된 질문

작성

·

127

·

수정됨

0

안녕하세요 선생님
섹션 11의 예외 처리 강의 중 [두 가지 예외 종류] 파트를 공부하다가 궁금증이 생겨서 질문드립니다.

 

Checked Exception과 Unchecked Exception을 Exception 클래스의 파생이냐, 혹은 RuntimeException의 파생이냐에 따라 분류하는 것으로 설명해주신 것으로 이해했는데요.

 

그런데 1.4v 교안 기준으로 305페이지에(강의 기준으로 2분 32초) Unchecked exception 열에서 사례를 들어주신 SQLException, IOException, ClassNotFoundExcpetion은 jdk를 확인해보니 Exception의 파생이었습니다.

{3AFAA449-8A62-4F8B-B203-6C4F8AAF248A}.png{8281AF6F-A8E4-4E73-8A6C-F66D47ACFDD1}.png{38D03319-B670-4768-B082-AB14EA6FEEE9}.png

(ReflectiveOperationException은 Exception 클래스의 파생입니다.)

jdk 코드를 기준으로 보면 SQLException, IOException, ClassNotFoundExcpetion은 Checked Exception에 해당하는 것으로 보이는데, 선생님께서 해주신 설명과 다른 부분이 있어서 혼동이 오는데 어떤게 맞는건지요? 

 

그리고 강의 내용을 바탕으로 좀 더 공부를 해보니 제가 이해한 바는 아래와 같습니다. 혹시 잘못 이해한 부분이이 있을까요?
1. Checked, Unchecked Exception 모두 예외 발생은 Runtime에서 이루어진다.
2. 파일 I/O, DB 접근은 실행 환경에서 자주 발생할 수 있는 문제이기 때문에, 개발자가 이를 예상하고 처리하도록 컴파일 시점에서 컴파일러에 의해 예외처리가 강제된다. -> SQLException, IOException 예외가 Checked Exception인 이유

 

감사합니다.

답변 1

0

널널한 개발자님의 프로필 이미지
널널한 개발자
지식공유자

지적하신 내용이 맞습니다. 이는 명백히 잘못된 내용입니다. ㅠㅠ

바로 수정해서 강의자료와 영상을 업데이트 했습니다. 감사의 마음으로 제가 인프런에 올린 강의 중 하나를 무료로 들으실 수 있도록 조치하겠습니다. cx8537@naver.com으로 원하시는 강의를 선택해 보내주세요. 바로 수강자로 등록하겠습니다. 감사합니다. 😄

널개짱님의 프로필 이미지
널개짱
질문자

명쾌한 답변 감사합니다 선생님!