
모든 예외와 오류 클래스의 최상위 클래스: Throwable
Throwable은 두가지 하위 클래스로 나뉨:
Exception
일반 예외 (Checked Exception) : 컴파일러가 예외 처리 코드 여부를 검사하는 예외
실행 예외 (Unchecked Exception) : 컴파일러가 예외 처리 코드 여부를 검사하지 않는 예외
→ RuntimeException의 자식 클래스
Error
예외 처리 코드란?
→ 예외 발생 시 프로그램의 비정상 종료를 방지하고 정상 흐름을 유지하기 위해 사용하는 코드

try-catch-finally
< 실행 흐름 >
정상 실행 시: try → finally
예외 발생 시: try → catch → finally
return문이 있어도: finally는 항상 실행
finally 블록