자바는 "한 번 작성하면 어디서든 돌아가는" 언어로 유명하다. 이 한마디에 자바를 이해하는 거의 모든 것이 담겨 있다. 이 글에서는 자바가 왜 그렇게 설계됐는지, 그 핵심인 JVM과 바이트코드가 무엇인지, 그리고 자바를 특징짓는 성질들을 정리한다.1. 자바의 탄생 배경자바의 역사1991년 썬 마이크로시스템즈의 제임스 고슬링이 주도한 Green Project에서 시작됐고(초기 이름 OAK), 1995년 Java로 발표되어 인터넷 시대와 함께 대중화됐다. 2009년 오라클이 썬을 인수해 지금에 이른다.자바가 풀려던 핵심 문제는 플랫폼 호환성이었다. 기존 언어는 OS나 하드웨어가 다르면 소스를 다시 컴파일하거나 고쳐야 했다. 윈도우용으로 짠 프로그램이 맥에서 안 도는 것이다.2. 플랫폼 독립성: WORA와 J..