Was bedeutet es wirklich, wenn Sie sagen "Diese Sprache läuft auf JVM"?

7

Ich habe in letzter Zeit viel über Scala, Clojure usw. gehört, die auf JVM laufen sollen. Bedeutet dies, dass diese Sprachen die darunter liegende Java-API implementieren? Was bedeutet es für eine Sprache, unter JVM zu laufen?

Danke.

    
Mayumi 05.10.2011, 02:45
quelle

4 Antworten

8

Es bedeutet, dass diese Sprachen in Java-Bytecode kompiliert werden können, was die JVM ausführt.

    
Paul Bellora 05.10.2011, 02:49
quelle
6

Es bedeutet, dass die Sprache irgendwann zu JVM-Byte-Code kompiliert wird. Die Sprache muss die Java-API nicht implementieren. Die Java-API ist bereits vorhanden (mehr oder weniger die ganze Zeit).

Es bedeutet nur, dass Sie, wenn Sie eine JVM haben, in der Lage sein sollten, die Sprache ohne eine andere VM auszuführen (obwohl Sie natürlich alle Klassen-Dateien benötigen, die der Sprachencompiler und die Bibliotheken benötigen).

    
Dave Newton 05.10.2011 02:48
quelle
4

Es gibt eine virtuelle Maschine, auf der Java ausgeführt wird (JVM), wodurch mehr Sorgen auf der Maschinenebene abstrahiert werden. Diese Sprachen verwenden sie nur als eine Zwischensprache, die dem Schreiben architekturspezifischer Anweisungen entgegensteht.

    
Jake Kalstad 05.10.2011 02:49
quelle
2

Normalerweise bedeutet es nur, dass Sie JRE installieren müssen, um sicherzustellen, dass sie ausgeführt werden können.

Und normalerweise benötigen sie kein JDK, das zum Kompilieren von .java-Code in eine .class-Byte-Datei verwendet wird. Stattdessen stellen sie ihren eigenen Compiler zur Verfügung, der auf der JRE ausgeführt wird, die Sie installiert haben.

Also zusammenfassend, Sie brauchen nur eine Runtime-Unterstützung Java (einige spezifische Version).

Wenn Sie eine ausführliche Information benötigen: [email protected]

    
Norma McClelland 05.10.2011 03:14
quelle