7

最近、Scala や Clojure などを JVM 上で実行するという話をよく耳にします。これは、これらの言語がその下に Java API を実装していることを意味しますか? 言語が JVM の下で実行されるとはどういう意味ですか?

ありがとう。

4

4 に答える 4

8

これは、これらの言語をJVM が実行するJava バイトコードにコンパイルできることを意味します。

于 2011-10-05T02:49:01.877 に答える
6

これは、言語がある時点で JVM バイト コードにコンパイルされることを意味します。言語は Java API を実装する必要はありません。Java API はすでにそこにあります (多かれ少なかれ常に)。

JVM があれば、別の VM なしで言語を実行できるはずです (ただし、言語コンパイラとライブラリが必要とするクラス ファイルが必要になることは明らかです)。

于 2011-10-05T02:48:57.737 に答える
4

Javaが実行する仮想マシン(JVM)があり、マシンレベルの心配を抽象化します。これらの言語は、アーキテクチャ固有の命令を書くことに反対する中間言語としてそれを使用します。

于 2011-10-05T02:49:10.860 に答える
2

通常、これは、実行できることを確認するために JRE をインストールする必要があることを意味します。

また、通常、.java コードを .class バイト ファイルにコンパイルするために使用される JDK は必要ありません。代わりに、インストールした JRE で実行される独自のコンパイラを提供します。

要約すると、必要なのはランタイム サポート Java (いくつかの特定のバージョン) だけです。

詳細な情報が必要な場合: normabmcclelland@linuxmirroreast.com

于 2011-10-05T03:14:58.250 に答える