M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
M.A. Mónica Malinali Rueda Cruz
La Máquina Virtual Java
Ofrece especificaciones de plataforma hardware
Lee bytecode compilados que son independientes
de la plataforma
Es implantada como software o hardware
Es implantada en herramientas de desarrollo de
tecnología Java o en navegadores Web.
M.A. Mónica Malinali Rueda Cruz
La Máquina Virtual Java (JVM)
JVM ofrece definiciones para :
Conjunto de Instrucciones (Unidad central
de procesamiento [CPU])
Conjunto de Registros
Archivo con formato class
Pila
Recolector de basura del Heap
Area de Memoria
M.A. Mónica Malinali Rueda Cruz
La Máquina Virtual Java (JVM)
La parte principal de la verificación de tipos se
hace cuando el código es compilado.
Las implantaciones de la JVM aprobadas por
Sun Microsystems deben ser capaces de
ejecutar cualquier archivo class.
M.A. Mónica Malinali Rueda Cruz
Recolector de Basura
La memoria asignada que no se use debe ser
liberada.
En otros lenguajes, la liberación de memoria es
responsabilidad del programador
Java ofrece un hilo (proceso) a nivel de sistema
para rastrear la asignación de memoria
Recolección de basura:
Verifica y libera memoria que ya no es usada
Se hace automáticamente
Puede variar dramáticamente a lo largo de
implantaciones de la JVM
M.A. Mónica Malinali Rueda Cruz
Una aplicación básica Java
TestGreeting.java
1 //
2 // Sample "Hello World" application
3 //
4 public class TestGreeting{
5 public static void main (String[] args) {
6 Greeting hello = new Greeting();
7 hello.greet();
8 }
9 }
Greeting.java
1 // The Greeting class declaration.
2 public class Greeting {
3 public void greet() {
4 System.out.println("hi");
5 }
6 }
M.A. Mónica Malinali Rueda Cruz
Compilando y Ejecutando el Programa TestGreeting
• Compilando TestGreeting.java
javac TestGreeting.java
Greeting.java se compila automáticamente
Ejecutando una aplicación
java TestGreeting
Localizando errores comunes de compilación y tiempos
de ejecución
M.A. Mónica Malinali Rueda Cruz
Generador de código Justo en el momento (Just-In-Time JIT)
M.A. Mónica Malinali Rueda Cruz
El Ambiente de ejecución de JavaTM
Ejecuta tres tareas principales:
Carga código
Verifica código
Ejecuta código
M.A. Mónica Malinali Rueda Cruz
El Cargador de Clase
Carga todas las clases necesarias para la
ejecución de un programa
Mantiene las clases del sistema de archivos
local en espacios de nombre separados
Previene los engaños
M.A. Mónica Malinali Rueda Cruz
El verificador de bytecode
Asegura que:
El código se adhiera a la especificación de la
JVM
El código no viole la integridad del sistema
El código no provoque overflows o underflow
en la pila de operandos
Sean correctos los tipos de parámetros para
todo el código operacional
No ocurran conversiones ilegales de datos (la
conversión de enteros a apuntadores)
M.A. Mónica Malinali Rueda Cruz
Errores en tiempo
javac: Command not found
Greeting.java:4: cannot resolve
symbol
symbol : method printl
(java.lang.String)
location: class java.io.PrintStream
System.out.printl("hi");
^
TestGreet.java:4: Public class
TestGreeting must be defined in a
file called "TestGreeting.java".
M.A. Mónica Malinali Rueda Cruz
Errores en tiempo de ejecución
Can't find class TestGreeting
Exception in thread "main"
java.lang.NoSuchMethodError: main
M.A. Mónica Malinali Rueda Cruz
Ambiente de tiempo de ejecución Java
M.A. Mónica Malinali Rueda Cruz
Ejercicios Tareas básicas de Java
Objetivos:
Resolver errores de compilación y
ejecución en ejemplos ofrecidos por Java
y escribir un simple programa Java
Tareas:
Analizar y corregir errores de compilación
y ejecución
Crear una aplicación Java
M.A. Mónica Malinali Rueda Cruz
Verifique su progreso
Describe aspectos clave de la tecnología Java
Define los términos clase y aplicación
Escribir, compilar, y ejecutar una simple aplicación
Java
Describe la función de la JVM
Describe como trabaja el recolector de basura
Lista tres tareas ejecutadas por Java que maneja
seguridad del código
M.A. Mónica Malinali Rueda Cruz
Pensando mas allá
¿Cómo se beneficia de Java en su ambiente
de trabajo?
M.A. Mónica Malinali Rueda Cruz
Top Related