Diferencia entre JVM y JRE

JVM vs JRE

Java es un lenguaje de programación de alto nivel que es único en la forma en que los programas escritos en él pueden ejecutarse en casi cualquier plataforma. Pero antes de poder ejecutar el programa en una computadora, necesita instalar cierto software; algunas personas se refieren a ella como JVM, mientras que otras usan JRE. Aunque la mayoría de las personas se refieren a lo mismo, existen ciertas diferencias entre JVM y JRE. La JVM es en realidad una aplicación que forma parte del JRE. Para ejecutar una aplicación, necesita un JRE, que contiene la JVM.

JVM significa Java Virtual Machine y crea una computadora virtual que entiende el código con el que se escriben los programas Java. Los programas Java no se escriben de una manera específica del sistema operativo. Esto le brinda la capacidad de ejecutarse en cualquier plataforma, pero requiere el uso de una JVM para traducir básicamente los comandos del código de bytes de Java al código de máquina específico.

No todo lo que necesitan todos los programas están contenidos en la JVM. Algunos se encuentran en lo que se denominan clases de paquetes. Paquetes como AWT, Swing, lang y muchos otros proporcionan capacidades más complejas para la JVM. Cuando combina todos estos archivos de soporte junto con la JVM, eso es lo que se llama JRE o Java Runtime Environment. En términos simples, JRE es una combinación de JVM y muchos archivos de soporte, como paquetes que proporcionan el entorno desde el que se puede ejecutar un programa Java..

Dado que no es probable que un usuario final edite o cree aplicaciones Java, el JRE no contiene ningún archivo relacionado con la codificación, verificación y depuración de aplicaciones Java; Todo lo que se encuentra en otro paquete de software de Java. Esto minimiza el tamaño del JRE para facilitar y acelerar la descarga e instalación del JRE para la mayoría de los usuarios. Cada plataforma de software (es decir, Windows, Linux, Mac) tiene su propio JRE y JVM, que solo funcionaría en él y en ningún otro. Así que debes tener cuidado al descargar un JRE específico para el sistema operativo que tienes. Cada versión de JRE siempre contendría su JVM complementaria, por lo que no hay duda de obtener la JVM incorrecta..

Resumen:

1.JVM es solo una parte del JRE
2.JRE contiene clases de paquetes Java aparte de la JVM