Java 言語は、コンパイルされた Java コードがマシンによって認識できる言語ではなくバイトコードであるため、インタプリタ型言語であると言えます。したがって、直接実行することはできません。実行するには、JVM インタプリタが必要です。さまざまなプラットフォーム。
Java 言語
すべての Java コードをコンパイルする必要があるため、Java 言語はコンパイル済みであると言えます。コンパイルしないと役に立たない; Java コードはコンパイル後に直接実行できないため、解釈されるとも言えますが、JVM 上で解釈されて実行されるため、解釈されて実行されます。
ただし、現在の JVM には、効率性を高めるためにいくつかの JIT 最適化が施されています。 .class のバイナリ コードをローカル コードにコンパイルして直接実行するため、再度コンパイルされます。
C や C と同様、1 回コンパイルすると、オペレーティング システムが理解できる型に直接コンパイルして直接実行できるため、コンパイル言語と呼ばれます。 2 番目の処理がなければ、Java は異なります。最初にコンパイラによって .class タイプのファイルにコンパイルされます。これは Java 独自のタイプのファイルです。次に、仮想マシン (JVM) を通じて .class ファイルから 1 行を読み取ります。 Java は、各行を解釈して実行します。つまり、これはインタープリタ型言語であり、Java には複数の異なるオペレーティング システム用に異なる JVM があるため、Java は真のクロスプラットフォームです。
Javaの仮想マシンの仕組み
(1)Java言語のコンパイル→解説→実行処理
#(2)Java 仮想マシン##コンパイル言語とインタプリタ言語
#コンパイル言語: コンパイル完成したすべてのソース プログラムをバイナリ コードの実行可能プログラムに変換します。その後、プログラムを直接実行できます。 インタープリタ型言語: 完成したソース プログラムの 1 文を翻訳し、その文を最後まで実行します。
違いコンパイル言語は実行速度が速く、効率が高く、コンパイラに依存しており、クロスプラットフォームではありません。 インタープリタ型言語は実行速度が遅く効率が低く、インタープリタに依存しており、クロスプラットフォームのパフォーマンスが優れています。
概要個人的には、Java はインタプリタ言語だと思います。Java もコンパイルして .class ファイルにコンパイルする必要がありますが、言語ではないからです。これはマシンによって認識されますが、バイトコードであるため、最終的にはさまざまなプラットフォームで実行される jvm の解釈が必要になります。これが Java がクロスプラットフォームである理由でもあります。したがって、Java はコンパイルとインタプリタの両方であると言えますが、概念的な定義から分類する必要がある場合、Java はインタプリタ言語として分類されるべきではないかと思います。
以上がJavaはどの種類の言語に属しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。