[JAVA] 예외란 무엇인가?

예외(Exception) 프로그램 실행 도중 발생하는 예기치 않은 상황이나 오류를 가리키는 프로그래밍 용어입니다. 프로그램이 실행 중에 예외가 발생하면, 일반적인 흐름을 방해하거나 비정상적인 동작을 유발할 있습니다. 예외는 주로 논리적인 오류나 외부 요인으로 인한 문제로 인해 발생하며, 이를 처리하는 예외 처리 메커니즘이 프로그램의 신뢰성과 안정성을 강화하는 역할을 합니다.

 

 

예외 처리 목적

  1. 비정상 종료 방지
  2. 오류 메시지 제공
  3. 프로그램의 흐름 제어

예외 처리 장점

  1. 안정성과 신뢰성 향상
  2. 예외 상황 코드 분리로 유연성 향상
  3. 디버깅과 로깅
  4. 예외 종류별 대응

예외의 종류

  1. checked 예외 : 컴파일러에 의해 체크되는 예외로, 프로그래머가 반드시 처리해야 하는 예외입니다. FileNotFoundException 등이 이에 해당하는 Exception입니다. 해당 예외는 반드시 try-catch 블록을 사용해서 처리하거나 throws 키워드를 사용하여 예외를 던져야됩니다.
  2. Unchecked 예외 : 컴파일러에서 체크하지 않는 예외로, 프로그래머의 실수에 의한 오류가 주로 이에 해당합니다. 배열 인덱스 초과나 0으로 나누기 등이 이에 해당합니다. RuntimeException 하위에 있는 예외로 실행 단계에서 확인됩니다.
  3. 에러 : JVM에서 발생하는 예외로, 프로그램의 복구가 불가능한 상황을 나타냅니다. OutOfMemoryError StackOverflowError 이에 해당합니다.