Red de conocimiento informático - Aprendizaje de programación - La naturaleza multiplataforma de Java no significa que ejecutar el mismo programa fuente en una computadora con Windows dará como resultado un programa adecuado para computadoras con Windows.

La naturaleza multiplataforma de Java no significa que ejecutar el mismo programa fuente en una computadora con Windows dará como resultado un programa adecuado para computadoras con Windows.

No, la plataforma cruzada de Java se refiere a "compilar una vez, ejecutar en cualquier lugar", lo que significa que el archivo de código de bytes (.class) compilado a partir del código fuente de Java se puede ejecutar en diferentes sistemas operativos (Windows, Linux, MAC, etc.). Los sistemas requieren un JRE (Java Runtime Enviorment), que es una máquina virtual.

En cuanto a Android, simplemente toma prestado el lenguaje de programación Java y es otra plataforma desarrollada por Google. La máquina virtual que utiliza es diferente de la máquina virtual Java general JVM (Oracle/SUN), que se llama For. Dalvik VM, también necesita convertir archivos de código de bytes estándar de Java (.class) en código Davik VM (.dex). El instalador de APK es en realidad un archivo zip con un archivo dex comprimido.

Esta multiplataforma (excepto Android) se debe principalmente a razones históricas. Oracle también presentó una demanda contra Google, que puedes conocer. Con cada nueva versión de Java JDK lanzada por Oracle, Google rápidamente hizo lo mismo y creó herramientas (ADT) que permitieron la conversión al código Davik VM.