
JDK (Java Development Kit)
Java로 소프트웨어를 개발할 수 있도록 여러 기능들을 제공하는 패키지(키트)라고 한다.
JDK 구성
엄청 많은데, 그냥 내가 여러번 들어본 것만 우선 정리해보았다.
- apt : 어노테이션 툴
- appletviewer : 웹브라우저 없이 자바 애플릿을 실행하고 디버깅하기 위한 툴
- javac : 자바 컴파일러. 자바 소스파일을 바이트코드로 변환
- java : javac가 만든 클래스 파일을 해석 및 실행
- jar : 서로 관련있는 클래스 라이브러리들과 리소스를 하나의 파일로 묶어주는 툴
- jdb : 자바 디버깅 툴
- JRE(Java Runtime Enviroment) : Java가 동작하는데 필요한 JVM, 라이브러리 등 다양한 파일들을 포함한다. 작성된 자바 코드를 JVM에 넘겨 실행시켜준다.
- JVM(Java Virtual Machine 자바 가상 머신) : Java가 실제로 동작하는 가상 환경. 자바 프로그램이 다양한 OS 혹은 기기에서도 원활히 실행될 수 있게 해준다. 이 JVM덕분에 하나의 Java프로젝트를 개발해도 여러 환경에서 원활하게 실행시킬 수 있다! 또한 메모리도 효율적으로 관리해주며 이를 Garbage Collection이라고 한다.

JDK 종류
- Java SE : Java Platform , Standard Edition
표준 자바 플랫폼으로 표준적인 컴퓨팅 환경을 지원하기 위한 자바 가상머신 규격 및 API 집합을 포함한다.
JavaEE, JavaME는 구체적인 목적에 따라 자바 SE를 기반으로 API를 추가하거나 자바 가상머신 규격 및 API의 일부를 택하여 정의된다. - Java EE : Java Platform , Enterprise Edition
JavaSE에 웹 어플리케이션 서버에서 동작하는 기능을 추가한 플랫폼
이 스펙에 따라 제품을 구현한 것을 웹 어플리케이션 서버(WAS)라 한다. ex. tomcat
WAS와 웹 서버의 차이점 (링크)
참고로 Apache는 http 요청을 처리하는 웹서버이며, tomcat은 WAS 다.
3. Java ME : Java Platform , Micro Edition
제한된 자원을 가진 휴대전화, PDA 등에서 Java 프로그래밍 언어를 지원하기 위해 만든 플랫폼 중 하나이다.
결론.
- JavaSE는 Java가 어떠한 문법적인 구성을 가졌는지와 같은 것들을 나타내는 명세표이다. JavaSE를 기반으로 특정 기능을 구현하기 위한 JavaEE, JavaME 플랫폼도 있다.
- JDK는 JavaSE와 같은 규격을 토대로 만들어진 소프트웨어 패키지이다. 이는 Java를 개발 및 실행하는 데 필요한 툴들을 제공한다.
- JRE가 Java를 실행하는데 필요한 바로 그 툴이다.
아래의 글들을 참조하였습니다. 감사합니다🥰
https://velog.io/@shelly/JAVA-JDK%EB%9E%80
[JAVA] JDK란?
JDK에 관하여
velog.io
https://pythontoomuchinformation.tistory.com/277
JDK란? + JRE, JVM 총 정리
JDK란? Java Development Kit 자바 개발 키트 개발자들이 Java로 프로그램을 만들 수 있도록 다양한 기능을 제공하는 키트. 컴파일러, JRE, JVM 등의 도구들을 가지고 있다. 일반 사용자들이 자바로 만든 프
pythontoomuchinformation.tistory.com
'Java' 카테고리의 다른 글
mac에 설치된 Java 버전 확인, 삭제 (0) | 2025.04.11 |
---|---|
java | map 선언과 사용 (0) | 2023.04.16 |
java | 문자열 날짜로 변환 (string -> date) (0) | 2023.04.16 |
TIL | compareTo(), compareToignorecase() (0) | 2022.10.25 |
TIL | Java - API java.lang 패키지 (0) | 2022.10.19 |