문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 Java (문단 편집) == 특징 == Java의 가장 큰 특징은 플랫폼에 독립적인 언어라는 점이다. 소스 코드를 기계어로 직접 컴파일하여 링크하는 C/C++의 컴파일러와 달리 자바 컴파일러는 바이트코드인 클래스 파일(.class)을 생성하고, 이 파일의 바이트코드를 읽은 뒤 기계어로 바꾸어 실행하는 것은 [[자바 가상 머신]]이다. 예를 들어 플랫폼에 종속된 경우 [[Microsoft Windows|윈도우]]에서 빌드한 프로그램을 그대로 [[Linux|리눅스]]나 [[macOS]]에서 실행하는 것은 불가능 하다. 반면 Java로 작성 된 프로그램은 플랫폼에 맞는 자바 가상 머신만 설치되어 있다면 대체로 문제 없이 동작한다. 이는 바이트 코드가 플랫폼이 아닌 [[자바 가상 머신]]에서 실행가능하며, 프로그램 실행의 주체가 운영 체제가 아닌 자바 가상 머신이기 때문이다. 이러한 점을 일컬어 플랫폼에 독립적이라고 한다. 이와 같이 장점으로 내세우는 '플랫폼 독립성'이라는 것이 C/C++로 쓰여진 자바 가상머신의 이식성을 통해서 이루어진 것이라, 실상은 자바 가상 머신에 심하게 종속된 언어이고, C/C++의 이식성을 초월하지 못한다. 따라서 Java의 플랫폼 독립성은 항상 '플랫폼에 맞는 자바 가상 머신만 설치되어 있다면'이라는 가정이 필요하다. 그러나 플랫폼이 바뀌어도 어쨌든 재컴파일하지 않아도 바이너리를 그대로 쓸 수 있다는 것은 이전의 프로그래밍 언어에는 없는 특징이다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기