본문 바로가기
728x90
반응형
   +-----------------------------------------------------+
   |                    Java Source Code                 |
   +-----------------------------------------------------+
                             ↓
   +-----------------------------------------------------+
   |                  Java 컴파일러 (javac)                |
   +-----------------------------------------------------+
                             ↓
   +-----------------------------------------------------+
   |                바이트코드 (.class 파일)                 |
   +-----------------------------------------------------+
                             ↓
   +-----------------------------------------------------+
   |                 Java 가상 머신 (JVM)                  |
   +-----------------------------------------------------+
                             ↓
   +-----------------------------------------------------+
   |               운영체제 및 하드웨어 (컴퓨터)                |
   +-----------------------------------------------------+

java는 모든 컴퓨터에서 돌아가기 위해 위에 표와 같은 순서를 가지고 실행된다.

각각의 요소들에 대한 설명을 적어보겠습니다!

  • Java Source Code: Java 프로그램은 일반적으로 Java 프로그래밍 언어로 작성되며, 이 소스 코드는 Java 소스 파일로 저장되며 .java 확장자 파일을 말한다.

  • Java 컴파일러 (javac): Java 소스 코드를 컴파일하는 단계에서 javac 컴파일러가 사용된다. 이때 컴파일러는 Java 소스 코드를 바이트코드로 번역하고 .class 확장자를 가진 바이트코드 파일을 생성한다.

  • 바이트코드 (.class 파일): 컴파일러에 의해 생성된 바이트코드는 .class 확장자를 가지며, 이것은 Java 프로그램의 중간 형식이다.바이트코드는 Java 가상 머신 (JVM)에서 실행되기 위한 형태이다.
  • Java 가상 머신 (JVM): JVM은 Java 바이트코드를 실행하는 역할을 하며, JVM은 Java 프로그램의 실행 환경이며, 특정 운영체제 및 하드웨어에서 독립적으로 운영된다. 그렇기에 모든 컴퓨터에서 작동할 수 있다. 

  • 운영체제 하드웨어 (컴퓨터): JVM 운영체제와 하드웨어 위에서 실행되며, JVM Java 프로그램이 운영체제와 하드웨어와 상호 작용하도록 중계하는 역할을 한다. 이것은 Java 프로그램이 다양한 운영체제 하드웨어 환경에서 실행 있도록 해준다.
728x90
반응형