JVM
과 통신한다.JVM
이 자바 응용 프로그램으로부터 전달 받은 명령을 해당 운영체제가 이해할 수 있도록 변환하여 전달한다.JVM
은 운영체제 종속적이어서 여러 운영체제에 설치할 수 있는 서로 다른 버전의 JVM
이 제공된다.자바는 객체지향 프로그래밍언어 중 하나.
객체 지향 개념의 특징인 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어이다.
GC
가 자동적으로 메모리를 관리해준다.GC
가 없다면 프로그래머가 사용하지 않는 메모리를 체크하고 반환하는 일을 수동으로 처리해야한다.다양한 Java API를 통해 비교적 짧은 시간에 네트워크 관련 프로그램을 쉽게 개발할 수 있도록 지원한다.
자바를 실행하기 위한 가상 컴퓨터.
자바로 작성된 애플리케이션은 모두 이 JVM에서만 실행되기 때문에 자바 애플리케이션이 실행되기 위해선 반드시 JVM이 필요하다.
일반 어플리케이션
<-> OS
<-> 컴퓨터(하드웨어)
자바 어플리케이션
<-> JVM
<-> OS
<-> 컴퓨터(하드웨어)
자바 어플리케이션은 JVM
을 한번 더 거치고, 하드웨어에 맞게 완전히 컴파일된 상태가 아니고 실행 시에 해석되기 때문에 속도가 느리다는 단점이 있지만, 바이트코드를 기계어로 바로 변환해주는 JIT 컴파일러
기술이 적용되어 JVM
의 기능이 향상됨으로써 속도 문제가 개선되었다.
main()
메서드는 자바 어플리케이션의 시작점이다. main()
메서드의 첫 줄부터 코드가 실행되기 시작하여 마지막까지 모두 실행되면 프로그램이 종료되고 프로그램에서 사용했던 자원들은 모두 반환된다.자바의 정석