.java, .class

Hyun·2023년 3월 14일
0

자바 문법

목록 보기
1/8

src 폴더와 bin 폴더 내에 있는 파일들의 차이

src(source)

  • 소스코드(코딩하는 내용)가 저장되는 공간
  • .java 파일을 의미한다

bin(binary)

  • binary는 "이진"이라는 의미
  • 자바가상머신(JVM)이 읽을 수 있는 0과 1로 이루어진 파일이 저장된다.
  • .class 파일을 의미한다.

예를 들어 이클립스 프로젝트 내에서 클래스를 생성하면 클래스이름.java 소스파일이 프로젝트 내의 src 폴더에 생긴다. 이를 run기능을 통해 컴파일하면 해당클래스이름.class 실행파일이 프로젝트 내 bin 폴더에 생기는 것을 볼 수 있다.

여기서 .class 실행 파일은 중간 계층 언어로 된 코드이며 byte 코드이다. 특정 HW/OS에 상관없이 공통적으로 실행이 가능하다.

  • 자바 컴파일러(javac.exe)는 자바 가상머신이 이해할 수 있는 코드를 생성한다.
  • 자바 컴파일러는 소스파일에 저장된 소스코드를 자바 가상머신(JVM)이 이해할 수 있는 자바 바이트코드로 변환하는 역할을 한다.
  • 바이트 코드는 확장자가 class인 클래스 파일에 담긴다.

이 .class 파일을 실행하면 Java 가상 머신 에뮬레이터(JVM)가 실시간으로 HW/OS에 맞는 기계어로 변역해 실행해준다.

이클립스에서 .java 파일을 run하는 것은 bin 폴더 내 해당 이름의 .class 실행파일을 JVM을 통해 실행하는것과 동일하다.

*참고 및 출처 - 윤성우의 열혈 Java 프로그래밍, 오렌지 미디어

profile
better than yesterday

0개의 댓글