Java

Java SEやJDK、JREやJVMの違いを具体例付きで解説!

2021年11月24日

プログラミング

シン

フリーランスエンジニア|プログラミング資格 Oracle認定Java Silver| Web資格 全日本SEO協会認定 SEO検定3級4級|大阪在住

本記事の内容

  • Javaとは
  • Java SEとEE,MEの違い
  • JDK,JRE,JVMの違い

Javaは日本で多くの企業で使われている人気プログラミング言語です。

JavaはOSに依存しない言語という特徴がありますが、Javaで開発を行うためには、いくつかのソフトが必要です。

そこで今回は「Java SE,EE,MEの違い」「JDK,JRE,JVMの違い」について、わかりやすく解説していきますね。

僕は大阪で現役Javaエンジニアとして勤務しておりますので、記事内容の信ぴょう性はあるかとおもいます。

最後までご覧いただくことで、Javaがどういった仕組みで動いているのかが明確になりますよ。

これからお伝えすることは、Javaエンジニアになる方であれば必須の知識となります。

ぜひこの記事でマスターしていってくださいね。

プログラミング言語Javaとは

最初にJavaとは、どのようなプログラミング言語なのかについて解説していきます。

サン・マイクロシステムズが開発

Javaとは、1995年にアメリカのサン・マイクロシステムズが開発しリリースされたプログラミング言語です。

2010年にOracle社に買収されたため、現在はOracle社がJavaの版権を持っています。

Javaのバージョンの歴史をざっくりまとめると、下記の通りです。

  • JDK Beta:1995年
  • JDK1.0 :1996年1月23日
  • J2SE1.2 :1998年12月8日
  • Java SE 6:2006年12月11日
  • Java SE 17:2021年9月14日

2021年11月現在のJavaのバージョンは「Java SE 17」となっております。

リリースされてから、かれこれ26年も経っているのです。

Javaで作られた世の中のもの

Javaは、世の中のさまざまなアプリケーションやシステムに使われているプログラミング言語です。

例えば大人気ゲームのマインクラフトは、Javaでつくられています。

他にも、TwitterもJavaで作られています。

Javaはデザインを整えたりするためのフロントエンド側ではなく、目に見えない裏側のバックエンドで動く言語です。

Javaが動くタイミングは様々ですが、たとえば簡単にいうと、「ボタン」を押したとき等に動作します。

Java SE・Java EE・Java MEの違いとは

Javaに関連する専門用語はたくさんあります。

さらに似たような用語が多いので、用語だけを覚えようとすると、どれがどんな意味なのか覚えるのが大変です。

しかしそれぞれの役割について理解をすれば、初心者でも覚えることはさほど難しくありません。

ここからは、下記について解説していきます。

  • Java SEとは
  • Java EEとは
  • Java MEとは

一つずつみていきましょう。

Java SEとは

Java SEとは、Java Standard Editionの略で、主にJavaのプログラミングで使われる最低限必要な基本機能をまとめたAPIです。

APIとは、簡単にいうと、機能を共有する仕組みのことを言います。

たとえば、Javaでよく目にする出力時に使われる「System.out.println」も、Java SEの中にあるAPIを使っているから利用できるのです。

Java SEは、Javaで開発するために必要な基本的なAPIをまとめたもの

Java EEとは

Java EEとは、Java Platform Enterprise Editionの略で、Java SEに拡張機能を加えたものです。

たとえば簡易デスクトップアプリはJava SEのみで開発することも可能ですが、大規模システムを開発する際などは、Java EEが必要なケースがあります。

またJava EEは旧名で、現在は「Jakarta EE」に名称変更されています。

Java EEは、大規模開発に使われるJava SEに拡張機能を加えたもの

Java MEとは

Java MEとは、Java Platform Micro Editionの略です。

Java MEは主に、携帯電話やプリンタ、家電製品といった組み込み系デバイスを開発するために必要なAPIがまとめられています。

Java MEは、組み込み系デバイス開発時に必要なAPIをまとめたもの

JDK・JRE・JVMの違いとは

続いてJDK,JRE,JVMについてです。

  • JDKとは
  • JREとは
  • JVMとは

ではわかりやすく解説していきますので、順番に見ていきましょう。

JDKとは

JDKとは、Java Development Kitの略で、Javaで開発するために必要なソフトのことです。

JDKがあることで、Javaのプログラムのコンパイルや実行、デバッグなどができるようになります。

コンパイルとは簡単に言いますと、Javaのプログラムをコンピュータが理解できるように変換することです。

JDKには後述するJREが含まれております。そしてJREの中に、JVMも含まれています。

つまりJDKをインストールすれば、Javaでの開発が可能です。

JDKは、Oracle公式サイトよりインストールすることが可能です。

JDKはJavaの開発キット

JREとは

JREとは、Java Runtime Environmentの略です。

「Runtime(ランタイム)」とは、「実行」という意味になります。

つまりJREは、Javaのアプリを実行するために必要なものがまとめられたソフトです。

JREは単独でインストールすることはできず、先述したJDKの中に含まれております。

JREはJavaプログラムを実行するためのソフト

JVMとは

JVMとは、Java virtual Machineの略で、JavaのアプリケーションをmacOSや Windowsなどで実行するために必要なアプリケーションです。

Javaの仮想マシンとも呼ばれています。

JavaはOSに依存しないプログラミング言語なので、JVMをインストールさえすればどんなOSでも動作します。

たとえば、Windows,macOS,Linuxなどですね。JVMは先述したJREの中に含まれております。

JVMはJavaのプログラムをOSで動作させるための仮想マシン

Java SE・JDK・JRE・JVMの違い:まとめ

Java SEやJDK,JRE,JVMの違いについて解説してきました。下記まとめです。

  • Java SEは、Javaで開発するために必要な基本的なAPIをまとめたもの
  • Java EEは、大規模開発に使われるJava SEに拡張機能を加えたもの
  • Java MEは、組み込み系デバイス開発時に必要なAPIをまとめたもの
  • JDKはJavaの開発キット
  • JREはJavaプログラムを実行するためのソフト
  • JVMはJavaのプログラムをOSで動作させるための仮想マシン

似たような用語がたくさんあるので、一度で覚えるのは難しいと思います。

ぜひ本記事を何度も見返していただき、徐々に覚えていってくださいませ。

今回は以上です。

  • この記事を書いた人

シン

フリーランスエンジニア|プログラミング資格 Oracle認定Java Silver| Web資格 全日本SEO協会認定 SEO検定3級4級|大阪在住