Maquina Virtual

4
MAQUINA VIRTUAL JVM Una máquina virtual Java (en inglés Java Virtual Machine, JVM) es una máquina virtual de proceso nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y es generado por el compilador del lenguaje Java. El código binario de Java no es un lenguaje de alto nivel, sino un verdadero código máquina de bajo nivel, viable incluso como lenguaje de entrada para un microprocesador físico. Como todas las piezas del rompecabezas Java, fue desarrollado originalmente por Sun. La JVM es una de las piezas fundamentales de la plataforma Java. Básicamente se sitúa en un nivel superior al hardware del sistema sobre el que se pretende ejecutar la aplicación, y este actúa como un puente que entiende tanto el bytecode como el sistema sobre el que se pretende ejecutar. Así, cuando se escribe una aplicación Java, se hace pensando que será ejecutada en una máquina virtual Java en concreto, siendo ésta la que en última instancia convierte de código bytecode a código nativo del dispositivo final. Objeto: entidad existente en la memoria del ordenador que tiene unas propiedades (atributos o datos sobre sí mismo almacenados por el objeto) y unas operaciones disponibles específicas (métodos). Clase: abstracción que define un tipo de objeto especificando qué propiedades (atributos) y operaciones disponibles va a tener. Estas definiciones son quizás poco clarificadoras. Con un ejemplo vamos a entenderlo mejor. En primer lugar pensemos en un programa que trata de gestionar datos sobre los vehículos de transporte público de una ciudad, por ejemplo México D.F.

description

maquina virtual java

Transcript of Maquina Virtual

Page 1: Maquina Virtual

MAQUINA VIRTUAL JVM

Una máquina virtual Java (en inglés Java Virtual Machine, JVM) es una máquina virtual de proceso nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y es generado por el compilador del lenguaje Java.

El código binario de Java no es un lenguaje de alto nivel, sino un verdadero código máquina de bajo nivel, viable incluso como lenguaje de entrada para un microprocesador físico. Como todas las piezas del rompecabezas Java, fue desarrollado originalmente por Sun.

La JVM es una de las piezas fundamentales de la plataforma Java. Básicamente se sitúa en un nivel superior al hardware del sistema sobre el que se pretende ejecutar la aplicación, y este actúa como un puente que entiende tanto el bytecode como el sistema sobre el que se pretende ejecutar. Así, cuando se escribe una aplicación Java, se hace pensando que será ejecutada en una máquina virtual Java en concreto, siendo ésta la que en última instancia convierte de código bytecode a código nativo del dispositivo final.

Objeto: entidad existente en la memoria del ordenador que tiene unas propiedades

(atributos o datos sobre sí mismo almacenados por el objeto) y unas operaciones disponibles

específicas (métodos).

 

Clase: abstracción que define un tipo de objeto especificando qué propiedades (atributos) y

operaciones disponibles va a tener.

 

Estas definiciones son quizás poco clarificadoras. Con un ejemplo vamos a entenderlo mejor.

En primer lugar pensemos en un programa que trata de gestionar datos sobre los vehículos de

transporte público de una ciudad, por ejemplo México D.F.

Page 2: Maquina Virtual

 

 

En este ejemplo hemos considerado que el problema consta de tres tipos de vehículo: taxi,

autobús y tranvía, y que esos tipos los denominamos clases. ¿Qué haríamos en Java para

definir una clase? Indicar sus propiedades y operaciones (métodos) disponibles, por ejemplo:

/* Ejemplo Clase Taxi - aprenderaprogramar.com */

Clase Taxi {

Propiedades:

Matrícula identificativa

Distrito en el que opera

Tipo de motor diesel o gasolina

Coordenadas en las que se ubica

 Operaciones disponibles:

Asignar una matrícula

Asignar un distrito

Asignar un tipo de motor

Ubicar en unas coordenadas

}

 

Page 3: Maquina Virtual

 

El haber definido así el taxi significará que todo objeto de tipo Taxi que creemos tendrá una

matrícula identificativa, un distrito en el que opera, un tipo de motor y unas coordenadas en

las que se ubica. La creación de un objeto sería algo así como: “Crear un objeto Taxi con

matrícula BFG-7452, distrito Norte, tipo de motor Diesel y coordenadas Desconocidas.”

El uso de una operación sobre un objeto sería algo así como: “Taxi BFG-7452 --> Ubicar en

coordenadas (X = 128223, Y = 877533)”. Las operaciones en Java se denominan métodos,

veremos cómo se definen más adelante.

Decimos que un objeto es una instancia de una clase. Por ejemplo el taxi matrícula BFG-7452

es una instancia de la clase Taxi. Varios objetos (p.ej. taxis) de una misma clase decimos que

constituyen instancias múltiples de la clase. Más adelante veremos que tanto una clase como

un objeto en Java pueden representar otras cosas además de lo que ahora hemos explicado,

pero todo a su tiempo.

QUE ES UN METODO:

Un método en Java es un conjunto de instrucciones definidas dentro de una clase, que realizan una determinada tarea y a las que podemos invocar mediante un nombre.  Algunos métodos que hemos utilizado hasta ahora:– Math.pow ()– Math.sqrt ()– Character.isDigit ()- System.out.println ();

Cuando se llama a un método, la ejecución del programa pasa al método y cuando éste acaba, la ejecución continúa a partir del punto donde se produjo la llamada.

BENEFICIOS:

Utilizando métodos:

-  Podemos construir programas modulares.-  Se consigue la reutilización de código. En lugar de escribir el mismo código repetido cuando se

necesite, por ejemplo para validar una fecha, se hace una llamada al método que lo realiza.En Java un método siempre pertenece a una clase.Todo programa java tiene un método llamado main. Este método es el punto de entrada al programa y también el punto de salida.

1. ESTRUCTURA GENERAL DE UN MÉTODO JAVA La estructura general de un método Java es la siguiente:

Page 4: Maquina Virtual

[Especificadores] tipo Devuelto nombre Método([lista parámetros]) [throws lista Excepciones]{    // Instrucciones   [Return valor;]}Los elementos que aparecen entre corchetes son opcionales.