Java >> Tutoriel Java >  >> Java

Pourquoi Java est-il indépendant de la plate-forme ?

Depuis, nous savons que "Java est un langage indépendant de la plate-forme" . Nous allons d'abord comprendre qu'est-ce que l'indépendance de la plate-forme ?

Lorsque nous écrivons un programme (ou code) sur un système d'exploitation (ou plate-forme) et que nous l'exécutons sur un autre système d'exploitation comme Linux ou UNIX. Nous obtiendrons le même résultat, lorsque nous exécutons un programme, il n'y a aucun effet sur la sortie.

Pourquoi Java est-il indépendant de la plate-forme ?

  • Comment Java est indépendant de la plate-forme simplement à cause du Bytecode (c'est-à-dire que le Bytecode est le code compréhensible par la machine de la JVM (Java Virtual Machine))
  • En utilisant l'exécution de bytecode, java prouve qu'il s'agit d'un langage indépendant de la plate-forme.
    Voici le processus d'exécution du bytecode java.
    sample.java → javac (sample. class) → JVM(sample.obj) → afficher la sortie finale.
  • Le premier code source est utilisé par le compilateur Java et converti ce code dans le fichier .class et le code du fichier de classe est sous forme de code octet et ce fichier de classe est utilisé par JVM et à nouveau pour être converti en fichier objet puis après avoir affiché la sortie finale à l'écran.
  • Java est un langage indépendant de la plate-forme (en termes simples, nous pouvons exécuter (fichier .class) sur n'importe quelle plate-forme. Le comportement sera le même (sur MAC, LINUX et WINDOWS)).
  • Le compilateur Java convertit le code source en bytecode et le bytecode n'est pas conçu pour un système d'exploitation spécifique compréhensible.
  • JVM lit le bytecode et le traduit sous une forme compréhensible par le système d'exploitation spécifique.
  • Les bytecodes sont également appelés code compréhensible JVM ou code intermédiaire.
  • Java communique avec JVM et JVM communique avec du code d'octet.
  • Si le bytecode existe, la JVM lira et s'il n'existe pas, la JVM déclenchera une exception.

Balise Java