224 votes

Dans quelle langue sont le compilateur Java, la JVM de Java et de l'écrit?

Dans laquelle les langues sont le Java compilateur (javac), la machine virtuelle (JVM) et l' java starter écrit?

182voto

oxbow_lakes Points 70013

Le libellé exact de la question est un peu trompeur: il n'est pas "la machine" ou "le compilateur" comme il y a plusieurs JVM vendeurs (jrockit est un, IBM autre) et plusieurs compilateurs .

  • La JVM de Sun est écrit en C, bien que ce ne doit pas être le cas - la machine comme il s'exécute sur votre machine est une plate-forme dépendant de l'exécutable et donc pourrait avoir été écrit à l'origine dans n'importe quelle langue. Par exemple, l'original de la JVM IBM a été écrit en Smalltalk

  • Les bibliothèques Java (java.lang, java.util etc, souvent désigné comme l'API Java) sont eux-mêmes écrits en Java, bien que les méthodes marqués native aura été écrit en C ou C++.

  • Je crois que le compilateur Java fournie par le Soleil est également écrit en Java. (Même si, là encore, il existe plusieurs compilateurs)

115voto

shrinath Points 81

Très première compilateur Java développé par Sun Microsystems a été écrit en C en utilisant un certain nombre de bibliothèques C++. Aujourd'hui compilateur java est écrit en java et JRE dans C. on peut imaginer java compilateur écrit en java - java compilateur est écrit comme un programme java et ensuite compilé avec le compilateur java écrit en C(le premier compilateur java).ainsi, nous pouvons utiliser le nouvellement compilé compilateur java(écrit en java) pour compiler des programmes java.

69voto

Sev Points 6532

À Partir De Java Docs

Le compilateur est écrit en Java et le temps d'exécution est écrit en C ANSI

10voto

micmoo Points 3387

Ce lien devrait répondre à votre question

Il semble que le compilateur est maintenant écrit en Java, mais l'exécution est écrit en C ANSI

7voto

McDowell Points 62645

Si vous le souhaitez, vous pouvez télécharger les sources de l'OpenJDK de jdk.dev.java.net.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X