Java의 var
에 대한 얘기 중 var var = 10;
과 같은 선언이 되므로 var
는 키워드가 아니다. 라는 얘기가 있었기 때문에 제가 알고있었던 정보와 차이가 나서 다시 찾아보았습니다.
예약어는 언어에서 미리 예약한 단어입니다. 따라서 이는 식별자로 사용될 수 없습니다.
키워드는 언어에서 특별한 의미를 가지는 단어나, 문법의 일부를 의미합니다. 따라서 구문 분석의 대상이 됩니다.
여기서의 var
는 특별한 의미를 가지기 때문에 키워드이지만, 식별자로 사용할 수 있기 때문에 예약어는 아닙니다.
반면 goto
는 식별자로 사용할 수 없기 때문에 예약어이지만, Java 문법 상 특별한 의미를 가지지는 않기 때문에 키워드가 아닙니다.
구글 검색어: difference between keyword and reserved word
https://stackoverflow.com/questions/1078908/what-is-the-difference-between-keyword-and-reserved-word