컴퓨터 하드웨어의 오동작 또는 고장으로 인해 응용프로그램 실행 오류가 발생하는 것을 자바에서는 에러(error)라고 한다.
<aside> 🤡 예외(exception) : 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류 → 프로그램은 곧바로 종료되지만, **예외 처리(Exception Handling)**을 통해 프로그램을 종료하지 않고, 정상 실행 상태가 유지되도록 할 수 있다.
</aside>
일반 예외(Exception)
실행 예외(Runtime Exception)
컴파일하는 과정에서 예외 처리 코드를 검사하지 않는 예외를 말한다.
Java는 예외를 클래스로 관리한다.
JVM은 프로그램을 실행하는 도중에 예외가 발생하면 해당 예외 클래스로 객체를 생성한다.
java.lang.Exception
클래스를 상속받는다.
Exception
을 상속받지만, RuntimeException
을 상속받지 않는다.RuntimeException
을 상속받는다.
RuntimeException
역시Exception
을 상속받긴 하지만, JVM은RuntimeException
을 상속했는지 여부를 보고 실행 예외를 판단한다.