반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 네트워크
- 백준 1935
- SOLID원칙
- 스프링
- 참조형 반환타입
- k번째큰수
- removeAll
- Class Loader
- 포워드 프록시
- try-catch
- 옵저버 패턴
- 팩토리 패턴
- 팩토리패턴
- 쇠막대기
- 기본형 매개변수
- 백준 2164
- 싱글톤 패턴
- 스프링 컨테이너
- @Tranctional
- 자바의 면접
- 참조형 매개변수
- 전략 패턴
- TCP/IP 4계층
- 빈 타입 조회
- mvvm패턴
- 후위표기식
- 리버스 프록시
- 스프링 빈
- www.naver.com치면 발생하는일
- 스프링 싱글톤
Archives
- Today
- Total
스파이더 웹 개발
Java 컴파일 과정 본문
728x90
반응형
컴파일(Compile)
컴파일이란 컴퓨터가 이해할 수 있는 기계어로 변환하는 작업입니다. 이러한 작업을 해주는 프로그램을 가르켜
컴파일러(Compiler)라고 합니다. 자바의 경우, JVM에서 실행가능한 바이트코드 형태의 클래스 파일이 생성됩니다.
컴파일 과정
1. 개발자가 자바 소스코드(.java)를 작성한다
2. build를 합니다
3. java compiler의 javac의 명령어를 통해 바이트코드(.class)을 생성한다
4. class Loader를 통해 JVM 메모리 내로 로드한다
5. 실행엔진을 통해 컴퓨터가 읽을 수 있는 기계어로 해석된다
컴파일과 인터프리터의 차이
컴파일러
컴파일러는 전체 소스코드를 보고 해당 소스코드를 한번에 번역한다
그러므로 줄단위로 번역을 하는 인터프리터에 비해 번역 시간이 오래걸리는 편입니다.
하지만 컴파일러는 한 번 번역을 하면 실행 파일이 생성이되어 다음에 실행을 할 때 기존에 생성되었던 실행파일을 실행하기 때문에 인터프리터에 비해 실행시간이 빠른 편이다
인터프리터
인터프리터는 줄단위로 번역을 하기에 컴파일러에비해 번역시간은 빠른편이다
하지만 번역을 할 때 실행 파일 생성하지 않기 때문에 매번 실행할 때마다 같은 번역을 진행해야 한다
그래서 매번 번역을 거치기 때문에 인터프리터를 사용하는 언어들은 컴파일러를 사용하는 언어들에 비해 실행속도가 느린편이다
728x90
반응형
'Java' 카테고리의 다른 글
Class Path란 (0) | 2022.07.25 |
---|---|
기본형 매개변수, 참조형 매개변수, 참조형 반환타입 (0) | 2022.07.21 |
객체지향 프로그래밍 OOP(Object Oriented Programming) (0) | 2022.07.21 |
JVM 이란? (0) | 2022.07.21 |
Parameter와 Arguement의 차이 (1) | 2022.07.20 |
Comments