[Java] JVM과 자바 실행 원리
·
☕Java/📝Java Programming
(1) 자바의 프로그램 기본적인 동작 과정[1] 소스 코드 작성 -> .java 소스 파일 생성[2] 자바 컴파일러를 통해 .java 소스 파일을 .class(바이트 코드) 파일로 변환[3] JVM을 통해 .class 파일을 기계어로 변환 -> 기계어는 운영체제를 통해 실행[4] 결과적으로 운영체제가 프로그램을 실행함.* 바이트코드 : 자바 컴파일러를 통해 JVM이 읽을 수 있도록 번역을 해놓은 코드를 바이트코드라고 한다. (2) 자바 컴파일러 - 사용자가 직접 작성한 .java 소스코드를 JVM 이 읽을 수 있도록 바이트코드로 번역을 해주는 프로그램이다. - 컴파일 과정에서 구문 분석, 타입 검사, 최적화, 바이트 코드 생성을 해준다. (3) JVM(Java Virtual Machine) - 자바 바이..
[Java] JVM 동작 원리
·
☕Java/📝Java Programming
IDE는 자바 프로그램의 실행 명령어들을 대신 입력을 해주어 명령어를 몰라도 코드를 실행 할 수 있게 해준다. 이러한 추상화 덕분에 편리하지만 이러한 지식 없이 자바를 공부한다면 공부의 효율성이 떨어질 수 있다는 단점이 있다. JVM(Java Virtual Machine) 동작 원리JVM은 "java ClassName" 명령어를 통해 실행을 시킬 수 있게 된다. ClassName은 반드시 main 메서드가 들어있는 주 클래스여야 한다. JVM이 실행이 된 후 JVM의 부트스트랩 클래스 로더가 필요한 클래스 파일인 java.lang 패키지의 클래스 파일들을 먼저 로드 해준다. 이후, 애플리케이션 클래스 로더가 main 메서드 주 클래스를 로드를 해주게 된다. 이러한 과정이 다 끝나면, JVM은 main 메..