[Java] 모든 syntax에러는 컴파일 에러?
1. 모든 Syntax Error는 컴파일 에러인가?
그렇다.
자바에서 모든 문법 오류(Syntax Error) 는 컴파일 에러(Compile-time Error)에 해당한다.
예를 들어:
int x = ; // 세미콜론 앞에 값이 없음 → 문법 오류
System.out.println("Hello) // 따옴표 안 닫음 → 문법 오류
이런 문법 오류는 코드가 실행되기 전에 컴파일러가 잡아내기 때문에 컴파일이 되지 않고, 에러 메시지를 보여준다.
IDE에서도 빨간 줄로 바로 표시해 주지.
즉, 자바에서는 문법이 틀리면 컴파일조차 안 된다.
2. 컴파일 에러에 대응되는 개념은?
런타임 에러 (Runtime Error) 또는 실행 시간 오류이다.
차이점 한 줄로 정리하면:
구분 | 설명 | 예시 |
---|---|---|
컴파일 에러 | 코드 작성 시 문법적 문제가 있을 때 |
|
런타임 에러 | 코드 실행 중에 발생하는 예외 |
|
출처 : chatGPT