Différence entre JDK, JRE et JVM

L’avantage le plus important concernant les programmes Java réside dans la possibilité d’exécuter le même programme sur une grande variété de systèmes d’exploitation sans qu’il soit nécessaire de le recompiler pour chacun d’entre eux. Pour ce faire, l’application est compilée dans un langage intermédiaire interprété sur le système d’exploitation ciblé. Java Runtime Environment ou JRE est le progiciel contenant les applications nécessaires pour interpréter l’application Java et lui permettant de s’exécuter sur le système d’exploitation.

Le kit de développement Java ou JDK est une version Java du SDK plus traditionnel. C’est un progiciel qui contient les outils nécessaires pour écrire, compiler et déboguer des applications Java. Au-delà des applications de compilateur et de débogage, il existe d’autres outils permettant aux développeurs d’optimiser leurs programmes de manière à optimiser les performances et à utiliser moins de mémoire. Cela inclut l’application qui vérifie les conflits de fichiers jar, une autre qui vérifie la trace de la pile, un programme de lancement et un générateur d’en-tête et de stub parmi de nombreux autres outils.

QCM-JavaQCM Java – JDK JRE JVM et JITQCM sur Java avec des réponses pour la préparation des entretiens d’embauche, des tests en ligne, aux examens et aux certifications. Ces questions et réponses…Lire plus

 

Différence clé entre JDK, JRE et JVM

Pour comprendre la différence entre ces trois composants, considérons le diagramme suivant.

 

JRE = JVM + Java Class Library (JCL)
JDK = JRE + Java Development Tools (JDT)

 

JVM (Java Virtual Machine)

JVM est une machine abstraite. C’est ce qu’on appelle une machine virtuelle car elle n’existe pas physiquement. C’est une spécification qui fournit un environnement d’exécution dans lequel le bytecode Java peut être exécuté. Il peut également exécuter les programmes écrits dans d’autres langages et les compilés en bytecode Java.

Les machines virtuelles sont disponibles pour de nombreuses plates-formes matérielles et logicielles. JVM, JRE et JDK dépendent de la plate-forme car la configuration de chaque système d’exploitation est différente. Cependant, Java est indépendant de la plate-forme. Il existe trois notions du machine virtuelle Java: spécification, implémentation et instance.

La machine virtuelle Java effectue les tâches principales suivantes:

  • Charge le code
  • Vérifie le code
  • Exécute le code
  • Fournit l’environnement d’exécution
Qu'est-ce que l'abstraction de données dans POOQu’est-ce que l’abstraction de données dans la POO?L’abstraction est l’un des concepts clés dans les langages de programmation orientée objet (POO). Son objectif principal est de gérer la complexité en masquant les…Lire plus

 

JRE (Java Runtime Environment)

JRE est un ensemble d’outils logiciels utilisés pour développer des applications Java. Il est utilisé pour fournir l’environnement d’exécution. C’est l’implémentation de JVM. Cela existe physiquement. Il contient un ensemble de bibliothèques et d’autres fichiers que JVM utilise au moment de l’exécution.

L’implémentation de JVM est également activement publiée par d’autres sociétés que Sun Micro Systems.

 

JDK (Java Development Kit)

Le kit de développement Java (JDK) est un environnement de développement logiciel utilisé pour développer des applications et des applets Java. Cela existe physiquement. Il contient JRE + development tools.

JDK est une implémentation de l’une des plates-formes Java indiquées ci-dessous, publiées par Oracle Corporation:

  • Plateforme Java Standard Edition
  • Plateforme Java Enterprise Edition
  • Plateforme Java Micro Edition

Le JDK contient une machine virtuelle Java privée (JVM) et quelques autres ressources telles qu’un interpréteur / loader (java), un compilateur (javac), un archiveur (jar), un générateur de documentation (Javadoc), etc.

QCM-JavaQCM Java – Programmation Orientée ObjetQCM sur Java avec des réponses pour la préparation des entretiens d’embauche, des tests en ligne, aux examens et aux certifications. Ces questions et réponses…Lire plus
Conclusion
  • JRE est nécessaire pour utiliser les applications Java, tandis que JDK est nécessaire pour créer des applications Java.
  • JDK contient l’ensemble des éléments du JRE ainsi que les outils de développement.
  • Les JRE sont disponibles pour une gamme de plates-formes beaucoup plus large que celle de JDK.
  • Le JDK est destiné aux programmeurs et aux développeurs de logiciels, tandis que le JRE est destiné à l’utilisateur ordinaire.

 

Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *