자바를 하다보면 초기설정을 하게되는데 그때마다 JDK,JRE의 차이점에 대해 개념이 잡혀있지않았다.
이번에 개념을 잡고자 게시글을 작성하게 되었다.
굉장히 간단하다.
JDK = JRE + @ 이라 할 수 있고
JDK는 읽기,쓰기 전용 JRE는 읽기전용이라 생각할 수 있다.
JVM은 ( Java Virtual Mechine )
- JVM은 자바 소스코드로부터 만들어지는 자바 바이트 코드를 실행할 수 있다.
- 또한 JVM은 플랫폼에 의존적이다.
- 즉 리눅스의 JVM과 윈도우즈의 JVM은 다르다.
- 단 컴파일된 바이코드는 어떤 JVM에서도 동작시킬 수 있다.
- JVM은 역할은 다음과 같다.
- 바이트 코드(.class)를 읽는다.
- 바이트 코드(.class)를 검증한다.
- 바이트 코드(.class)를 실행한다.
- 실행환경(Runtime Environment)의 규격을 제공한다. (필요한 라이브러리 및 기타파일)
JRE(Java Runtime Enviroment) : 컴파일된 자바 프로그램을 실행시킬 수 있는 자바 환경
- JRE는 JVM이 자바 프로그램을 동작시킬 때 필요한 라이브러리 파일들과 기타 파일들을 가지고 있다.
- JRE는 JVM의 실행환경을 구현했다고 할 수 있다.
- 자바 프로그램을 실행시키기 위해선 JRE를 반드시 설치해야한다.
- 하지만 자바 프로그래밍 도구는 포함되어있지 않기 때문에 자바 프로그래밍을 하기 위해선 JDK가 필요하다.
JDK(Java Development kit) : 자바 프로그래밍시 필요한 컴파일러 등 포함
- JDK는 개발을 위해 필요한 도구(javac, java등)들을 포함한다.
- JDK를 설치하면 JRE도 같이 설치가 된다.
- 즉 JDK = JRE + @ 라고 생각하면 된다.
마지막으로 그림으로 보면 이해가 될것이다.
반응형
'JAVA' 카테고리의 다른 글
[JAVA] Web에서의 맵핑(Mapping)이란?? (0) | 2023.04.11 |
---|---|
[JAVA] 자바 기본 지식에 대하여 (0) | 2023.04.06 |
[JDK] Eclipse 설치 및 환경 설정 해보기 (0) | 2023.03.23 |
자바 For문에 대한 정리 2 (0) | 2023.02.19 |
자바 For문에 대한 정리 1 (0) | 2023.02.19 |