Exception
과Error
모두Throwable
클래스를 상속받고 있다.
Error
)java.lang.Error
클래스의 서브 클래스들이다.Exception
)java.lang.Exception
클래스의 서브 클래스들이다.Error
와 달리 애플리케이션 코드에서 예외가 발생하였을 경우에 사용된다. Checked Exception
RuntimeException
클래스를 상속하지 않은Exception
클래스들
try
- catch
문으로 잡거나 throws
를 통해 메서드 밖으로 던질 수 있다.Unchecked Exception
RuntimeException
을 상속한Exception
클래스들
Error
와 마찬가지로 에러를 처리하지 않아도 컴파일 에러가 발생하지 않는다.💡
RuntimeException
이란?
java.lang.RuntimeException
클래스를 상속한 예외들- 명시적인 예외 처리를 강제하지 않는다.
- 런타임 예외는 주로 프로그램의 오류가 있을 때 발생하도록 의도된 것이다.
- 대표적으로는
NullPointerException
,IllegalArgumentException
등이 있다.
📌
Checked Exception vs Unchecked Exception
정리
가장 명확한 구분 기준은 꼭 처리를 해야 하는가!이다.
@ExceptionHandler
를 사용할 수 있다.@ControllerAdvice
를 사용할 수 있다.오늘은 예외에 대해서 알아보았다.
다음에는 예외 복구에 대해서 더 자세히 알아보고@ExceptionHandler
, @ControllerAdvice
사용법에 더 자세히 알아볼 것이다🤩
https://mangkyu.tistory.com/152
https://velog.io/@kdhyo/Java%EC%98%88%EC%99%B8Exception%EA%B4%80%EB%A0%A8-%EC%A0%95%EB%A6%AC