2. El blog para aprender a programar
http://soft-mas.com
Una máquina virtual se define como un software creado para
emular el comportamiento de una máquina real. Java incorporó
una maquina virtual especial por la que debe pasar todo el
código antes de llegar al ordenador. El código que la máquina
virtual de Java interpreta se encuentra en los archivos .class
que debe contener al menos una clase pública.
El objetivo de la máquina virtual de java es proveer toda la
plataforma para que se pueda compilar el código, esta
funcionalidad es la que permite a Java ser independiente de la
plataforma en la que se ejecute, pues la compilación la realiza
una máquina genérica.
3. El blog para aprender a programar
http://soft-mas.com
El resultado de la compilación en la máquina virtual es una
codificación en bytecodes que luego serán interpretados.
¿Pero como funciona realmente esta máquina virtual?,
imaginemos que dentro de nuestro computador existe otro,
totalmente dedicado a compilar y ejecutar el código de Java, y
que lo podemos llevar a donde queramos, e instalarlo en un
sistema linux, windows o mac, y que nuestras aplicaciones
funcionarán igual, porque tenemos la máquina virtual
instalada.
4. El blog para aprender a programar
http://soft-mas.com
Todo el código que escribamos será enviado a este computador
y será interpretado por él, pero antes de ejecutarlo, la máquina
virtual hace una verificación del código para que no se violen
las directrices de memoria, por lo tanto no aparecerán los
errores que comúnmente se presentaban con C++.
Muchos lenguajes de programación permiten el control de
memoria en tiempo de ejecución, esto es, mediante
instrucciones podríamos decir al computador en que lugar de la
memoria almacenar el contenido de una variable.
5. El blog para aprender a programar
http://soft-mas.com
Esto se realiza por medio de punteros o apuntadores, así lo
maneja C++, que es el padre de Java. Sin embargo ¿que
pasaría si por error pasamos la dirección de memoria errónea
en nuestro código?, por lo menos tendremos un resultado
inesperado, pero podríamos ocasionar errores graves en el
funcionamiento del ordenador.