Java
프로그래밍을 위한 언어로 객체 지향적 프로그래밍 언어입니다.
특징
자바 컴파일러는 자바 언어로 작성된 프로그램을 바이트 코드라는 특수한 바이너리 형태로 변환합니다. 변환된 바이트 코드를 실행하기 위해서는 JVM(자바 가상 머신)이라는 특수한 가상머신이 필요합니다. 이 가상 머신은 자바 바이트코드를 어느 플랫폼에서나 동일한 형태로 실행시킵니다. 떄문에 자바로 개발된 프로그램은 CPU나 운영체제의 종류에 관계없이 JVM을 설치할 수 있는 시스템 어디서나 실행할 수 있습니다.
자바 vs C
C의 특징
각자 운영체제에 맞는 버전으로 하나씩 만들어야하므로 비효율적입니다.
Java의 특징
JVM - 각 운영체제에 맞게 자바 프로그램을 번역해줍니다.
운영체제에 맞게 다운로드 받을 수 있습니다.(운영체제마다 자바를 설치해줘야 합니다.)
Java를 설치하면 자동으로 JVM이 설치됩니다.(JVM과 각 운영체제가 종속적)
Java가 설치만 되어있으면, 각각 운영체제에 맞는 버전으로 따로 만들 필요가 없습니다.(JVM이 알아서 번역)