ホームページ  >  記事  >  Java  >  Java環境におけるJDK、JVM、JREの詳細な紹介

Java環境におけるJDK、JVM、JREの詳細な紹介

高洛峰
高洛峰オリジナル
2017-01-23 16:05:241636ブラウズ

Java 環境における JDK、JVM、JRE

私は最近 Android を過小評価しており、JDK、JVM、JRE、SDK、NDK、ADT などの概念がたくさん頭に浮かびました。しばらくすると、JDK、JVM、JRE は Java 環境用のものになり、SDK、NDK、ADT は Android 開発用のものになります。 JDK、JVM、JRE を区別してみましょう。

ヒント: Mac に Java をインストールした後、どこにありますか?下の図を参照してください

Java環境におけるJDK、JVM、JREの詳細な紹介

まず、JDK について話しましょう

JDK (Java Development Kit) は、 Java 言語)。

JDK は、Java ランタイム環境 (Java Runtime Envirnment)、一連の Java ツール (javac/java/jdb など)、および基本的な Java クラス ライブラリ (つまり Java API) を含む JAVA 全体の中核です。

以下の 3 つのバージョンがあります:

SE (J2SE)、スタンダード エディション、スタンダード エディションは、JDK 5.0 から Java SE に名前が変更されました。

EE(J2EE)、エンタープライズエディション、エンタープライズエディションは、このJDKを使用してJ2EEアプリケーションを開発します。 JDK 5.0からは、Java EEに名前が変更されました。

マイクロエディションであるME(J2ME)は、主にモバイルデバイスや組み込みデバイス上のJavaアプリケーションに使用され、JDK 5.0からJava MEに名前が変更されました。

JRE について話しましょう

JRE は Java Runtime Environment (Java Plug-in を含む) の略称で、Sun の製品であり、Java Runtime Environment と Java Plug-in の 2 つの部分で構成されます。 Java ランタイム環境 (JRE) は、アプリケーションを実行、テスト、配信できる Java プラットフォームです。これには、Java 仮想マシン (jvm)、Java コア クラス ライブラリ、およびサポート ファイルが含まれます。開発ツール (JDK) (コンパイラー、デバッガー、その他のツール) は含まれません。 JRE では、ブラウザでアプレットを実行するために補助ソフトウェア (Java プラグイン) が必要です。

JDK がなければ Java プログラムをコンパイルすることはできませんが、JRE 環境を備えたシステム上ではプログラムを実行できます。したがって、Java プログラムまたはアプレットを実行する必要がある場合は、JRE をダウンロードしてインストールします。 Java ソフトウェアを自分で開発したい場合は、JDK をダウンロードしてください。

最後にJVMについて学びましょう

JVMとは、Java仮想マシンのことで、実際のコンピュータの機能を模擬する架空のコンピュータです。
Java 言語の非常に重要な特徴は、プラットフォームから独立していることです。この機能を実現するには、Java 仮想マシンの使用が鍵となります。一般的な高級言語を異なるプラットフォームで実行したい場合は、少なくとも異なるターゲット コードにコンパイルする必要があります。 Java 言語仮想マシンの導入後は、別のプラットフォームで実行するときに Java 言語を再コンパイルする必要はありません。 Java 言語は、Java 仮想マシンを使用して特定のプラットフォームに関連する情報をシールドします。そのため、Java 言語コンパイラは、Java 仮想マシン上で実行されるターゲット コード (バイトコード) を生成するだけでよく、変更することなく複数のプラットフォーム上で実行できます。 。 Java 仮想マシンはバイトコードを実行するときに、そのバイトコードを特定のプラットフォームで実行するためのマシン命令に解釈します。これが、Java が「一度コンパイルすれば、どこでも実行できる」理由です。

これは 3 つの間の関係図です:

Java環境におけるJDK、JVM、JREの詳細な紹介

私たちの開発の実際の状況は次のとおりです: JDK を使用して (JAVA API を呼び出し)、独自の JAVA プログラムを開発した後、JDK Compile のコンパイラー (javac) を介します。テキスト Java ファイルを JAVA バイトコードに変換し、これらの JAVA バイトコードを JRE 上で実行すると、JVM がこれらのバイトコードを解析し、CPU 命令セットまたは OS のシステム コールにマップします。

JVM (Java Virtual Machine)、つまり Java 仮想マシン

JVM は特定のオペレーティング システム プラットフォームに関連する情報をシールドするため、Java プログラムは Java 仮想マシン上で実行されるターゲット コード (バイトコード) を生成するだけで済みます。変更を加えずに複数のプラットフォームで使用できます。 JVM がバイトコードを実行するとき、実際には最終的にバイトコードを特定のプラットフォームで実行するためのマシン命令に解釈します。仮想マシンの命令セットのコンパイルは、マイクロプロセッサの命令セットのコンパイルと非常に似ています。

JVM は Java 言語のクロスプラットフォームの基盤です (ここでの「プラットフォーム」とは異なるオペレーティング システムを指します)。Java プログラムを異なるオペレーティング システムで実行したい場合は、対応する JVM を異なるオペレーティング システムにインストールする必要があります。そのため、JVMにはWindows版、MAC版、Linux版などが存在します。

JRE(Java RuntimeEnvironment)、つまりJava実行環境

JREにはJava仮想マシンとJavaプログラムに必要なコアクラスライブラリが含まれています。開発した Java プログラムを実行する場合は、JRE をコンピュータにインストールするだけで済みます。

概要: JRE = JVM + Java クラスライブラリ

JDK (Java Development Kit)、つまり Java Development Kit

JDK は Java 開発者が使用できるように提供されており、JRE やコンパイル ツール (javac.exe)、パッケージ化ツール (jar.exe) などの一部の Java 開発ツールが含まれます。したがって、JDK をインストールした後は、JRE をインストールする必要はありません。 Java 言語の学習者は、JDK をインストールする必要があります。JDK がなければ、Java コードをコンパイルして実行することができません。これが、ほとんどすべての Java 入門チュートリアルで JDK のインストールを推奨する理由です。

概要: JDK = JRE + Java 開発ツール

読んでいただきありがとうございます。皆様のお役に立てれば幸いです。このサイトのご支援に感謝いたします。

Java 環境における JDK、JVM、JRE の詳細については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。