JVM(Java仮想マシン)、JRE(Javaランタイム環境)との違いを理解しながら、私は、JDK(ジャストインタイムコンパイラで)(のJava Development Kit)、JITを苦労がありました、javac(Javaコンパイラ)。Javaコンポーネントの違い(JRE、JDK、JVM、JIT、javac)
誰かが私にこれらの間の良い比較と対照を教えてもらえますか?
JVM(Java仮想マシン)、JRE(Javaランタイム環境)との違いを理解しながら、私は、JDK(ジャストインタイムコンパイラで)(のJava Development Kit)、JITを苦労がありました、javac(Javaコンパイラ)。Javaコンポーネントの違い(JRE、JDK、JVM、JIT、javac)
誰かが私にこれらの間の良い比較と対照を教えてもらえますか?
リソースの多くは、このトピックであり、これらの二つの良いスタートのように見える:
あなたがためにGoogleのそんなに行っているかもしれませんこの質問の答えを見つけて、JVM、JRE、JVMのアーキテクチャと相互関係を示す非常に退屈な図を見つけました。実際に(理論的にではなく)それを理解するのに私は一年かかった。
JDK、JREおよびJVMがどのようなものです:
は、この単純な(まだ非常に重要な)の質問の答えを見つけるのをしてみましょうか?
JDK: - Java開発キット(短いJDK)は、Javaプログラムの開発と実行(実行)のための環境を提供するキットです。たとえば。あなた(Java Developerとして)はあなたのマシンで会計アプリケーションを開発しているので、このデスクトップアプリケーションを開発して実行するにはマシンに何が必要ですか?この目的のためにJ-D-Kが必要になります。JDKの最新バージョンをマシンにダウンロードするには、SunまたはOracleの公式Webサイトにアクセスするだけです。
したがって、JDKは、i)開発ツール(Javaプログラムを開発する環境を提供する)とii)(Javaプログラムを実行するための)JREの2つのキットを含みます。 JDKはJava開発者のみが使用します。
JRE: - Java Runtime Environment(JRE)は、Javaプログラム(またはアプリケーション)をマシン上でのみ実行する環境を提供するインストールパッケージです。アカウンティングアプリケーションを開発した後、同じアプリケーションを続行するなど、このアプリケーションをクライアントのマシンに実行したいとします。この場合、クライアントはアプリケーションを自分のマシンに実行するだけで済むので、クライアントはアプリケーションを自分のマシンに実行するためにJREをインストールする必要があります。
したがって、JREは、Javaプログラム、つまりシステムのエンドユーザーだけを実行したいユーザーのみが使用します。
JVM:Java仮想マシン(JVM)は、JDKとJREの両方で非常に重要な部分です.JDKとJREの両方に組み込まれているためです。 JREまたはJDKを使用して実行するJavaプログラムはJVMに入り、JVMはJavaプログラムを1行ずつ実行する責任があるため、インタプリタとしても知られています(後でインタープリタについて説明します)。したがって、JDKまたはJREインストールパッケージに組み込まれているため、JVMをマシンに個別にインストールする必要はありません。 JVMの詳細については、すぐに調べていきます。
最後に、Javaのすべての3つの主要部分について学んだ後、Javaのすべての主要コンポーネント間のアーキテクチャと相互関係を明確に理解するために、上記の図を見ることができます。
さて、私はそれについて私にあなたに伝えたいと思います。
JDK(Java開発者キット)は、完全なJava開発プラットフォームであり、我々は、コンパイル、デバッグ、コードを実行することができ、JDKは、オペレーティングシステムに依存するので、少しバージョン があり、Windowsによって分類し、Linuxとマック。
JRE(Java Runtime Environment)はJavaの実行環境で、Javaで書かれたゲームをプレイしたことがあれば、ゲームをプレイするときにJREを持たなければならないことがわかります。これはJavaランタイム環境です。
JVM(Java Virtual Machine)はJREの一部であり、JREの最も重要な部分です。
JITは、バイトコードをバイナリコードに変換できるツールです。
javacは、コードをJavaバイトコードに変換できるツールです。私たちは、関係を締結することができます
:
JDK = JRE +のjavac + jconsoleを+ jvisualvm +デモ+ドキュメント+他の
JRE = JVM + JAVAバイナリコード+他のライブラリ+他の
JVM = JIT +その他
enter image description here
https://www.javatpoint.com/difference-between-jdk-jre-and-jvm – Aman