[JAVA] 컴파일 에러와 런타임 에러의 차이점

컴파일 에러

컴파일 에러는 소스 코드를 컴파일할 때 발생하는 에러입니다. 컴파일러는 코드의 구문 및 타입 에러를 검출하고, 이를 해결하기 전에 프로그램을 컴파일하지 않습니다.

 

컴파일 에러 특징

  • 발생 시점 : 소스 코드를 컴파일할 때 발생합니다. 즉, 프로그램을 컴파일하기 전에 확인할 수 있는 에러입니다.
  • 원인 : 주로 구문 오류, 변수명 오류, 타입 불일치 등과 같은 코드의 오타나 잘못된 사용으로 인해 발생합니다.
  • 해결 방법 :  컴파일 에러가 발생하면 개발자는 오류 메시지를 분석하여 해당 부분을 수정해야 합니다.

런타임 에러

런타임 에러는 프로그램이 실행되는 동안 발생하는 오류로, 프로그램의 특정 시점에 발생하기 때문에 주의가 필요한 에러입니다.

 

런타임 에러 특징

  • 발생 시점 : 프로그램이 실행되는 동안에 발생합니다. 런타임 에러는 예측하기 어렵거나 미리 방지하기 어려운 상황에서 발생합니다.
  • 원인 : 주로 잘못된 계산, 배열 인덱스 초과, null 객체에 접근 등의 상황에서 발생합니다.
  • 해결 방법 : 예외 처리 및 로깅을 통해 오류를 파악하고 적절한 조치를 취해야 합니다.