Java SE、Java EE、 Java MEはプラットフォームの種類
Java SE、Java EE、 Java MEはJavaのプラットフォームの種類。
プラットフォームとは、Javaのプログラムを作成するための作成キットのことである。
プラットフォームにはAPIが含まれており、SE、EE、MEはそれぞれ含まれているAPIの種類が異なる。
SDK、JDK、 JRE、 JVMはJavaの開発や実行に使うソフトウェア
SDK、JDK、 JRE、 JVMはJavaの開発や実行に使うソフトウェアの名称。
それぞれ図のような関係にある
JDKとSDKはプログラムを開発するキット
まず、プログラムを開発するのに必要なものが一通り含まれた開発キットのことをSDK (Software Development Kit)と言う。
前述のプラットフォームは作成キットなのでプログラムを作成することしかできないが、SDKはプログラム作成する際に便利な機能が使えたり、作成したプログラムの実行、デバッグなどができる。
その中でも、Javaプログラムを開発するための開発キットをJDK(Java Development Kit)と言う。つまり、JDKはJavaのSDKとも言える。
JREはJavaプログラムを実行するためのソフトウェア
JDKの中にはJavaプログラムを実行するためのソフトウェアが含まれており、そのソフトウェアをJRE(Java Runtime Environment)と言う。
JVMはOSの違いに対応するための仮想マシン
JREの中には、どのOS上でもJavaプログラムが実行できるようにするための仮想マシンが含まれている。その仮想マシンをJVM(Java virtual machine)と言う。
まとめ
- Javaのプログラムを作成するキットをプラットフォームと言う
- Java SE、Java EE、 Java MEはJavaプラットフォームの種類で、含まれるAPIが異なる
- プログラム開発キットをSDKと言う
- JavaのSDKがJDK
- JREはJavaプログラムを実行するためのソフトウェアでJDKに含まれている
- JVMはどのOS上でもJavaプログラムが実行できるようにするための仮想マシンでJREに含まれている