
JDK는 Java Application을 개발하기 위한 개발 도구와 라이브러리를 제공하는 SDK이며, JRE(JVM 등등)와 JDK Tools(java, javac 등등)를 포함하고 있습니다. 이를 그림으로 표현하면 다음과 같습니다.

SDK(Software Development Kit)란?
SDK는 하드웨어, 운영체제 또는 프로그램 언어 제작사가 제공하는 툴입니다. 즉, JDK는 Java를 제작한 회사에서 제공하는 툴입니다.
JRE는 Java Application을 실행하기 위한 환경으로 JVM, Java Class Library, Runtime 환경 설정(프로퍼티, 리소스 등)을 포함하고 있습니다. 이를 그림으로 표현하면 다음과 같습니다.

JDK Tools는 Java Application 개발, 실행, 디버깅, 배포 등에 사용되는 독립적인 명령줄 도구들의 집합으로, 주요한 도구는 java, javac, jdb, javadoc, jar 등이 있으며 역할은 다음과 같습니다.
.java 파일을 바이트 코드인 .class 파일로 컴파일.jar 파일로 묶거나 이를 해제위에서 학습한 내용을 요약하면 다음과 같습니다.

Java 개발을 위한 SDK로, JRE와 JDK Tools를 포함하고 있습니다.
JRE는 Java Application 실행 환경, JDK Tools는 Java Application의 실행, 배포, 디버깅 등 어떠한 동작을 수행하기 위한 도구 모음입니다.
JRE는 JVM, Java Class Library, Runtime 환경 설정등이 포함되어 있습니다.
대표적인 도구로 javac, java, jdb, javadoc, jar 등이 있으며, 각 도구들은 다음과 같은 역할을 수행 합니다. javac는 컴파일, java는 실행, jdb는 디버깅, javadoc은 API 문서화, jar는 배포를 위해 클래스와 리소스 파일에 대한 압축과 해제 입니다.