예외는 프로그램 실행 중 예상치 못한 상황이 발생하는 것을 의미합니다.
예외가 발생하게 되면 프로그램이 비정상적으로 종료될 수 있으므로 try-catch 구문을 통한 예외 처리가 필요합니다.
// 의도하지 않은 예외
int result = 10 / 0; // ArithmeticException
0으로 나누는 행위는 따로 정의되지 않았으므로 ArithmeticException이 발생하며, 이 후 프로그램이 종료됩니다.
// 의도적인 예외
if (age < 18) {
throw new IllegalArgumentException("미성년자는 접근할 수 없습니다");
}
throw 키워드를 사용하여 의도적으로 예외를 발생시킬 수 있습니다.
예외가 발생한 메서드에서 예외를 처리하지 않으면, 예외는 메서드를 호출한 쪽으로 전파가 됩니다. 전파가 되다보면, main()까지 전파가 되는데 여기서 조차도 예외가 처리되지 않으면 프로그램이 종료됩니다.
프로그램이 비정상적으로 종료되는 상황은 말 그대로 비정상적인 상황이기 때문에, 안정성에 영향을 미칩니다. 프로그램의 안정성과 신뢰성을 보장하기 위해서는 예외 처리를 필수적으로 해주어야 합니다.
자료 및 코드 출처: 스파르타 코딩클럽