Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ndice
Qu es Java? La plataforma Java 2 La Mquina Virtual de Java Caractersticas principales Qu ventajas tengo como desarrollador? Bibliografa
.2
Qu es Java?
.3
La plataforma Java 2
.4
La plataforma Java 2
.5
Caractersticas Principales
.6
Caractersticas: Sencillo
No aritmtica de punteros. No existen referencias. No existe typedef ni #define. No sobrecarga operadores. No herencia mltiple. Posee clase String. No necesidad de asignar y liberar memoria (Garbage Collector).
.7
Java trabaja con sus datos como objetos y con interfaces a esos objetos. Implementa:
- Interfaces. - Paquetes.
.8
Caractersticas: Distribuido
Concebido para trabajar en un entorno conectado en red. En s no es distribuido, proporciona libreras y herramientas para que los programas puedan ser distribuidos, que los programas corran en varias mquinas interactuando.
.9
Caractersticas: Interpretado
Compilador tradicional
Intrprete de ByteCodes
Compilador Java
Traslada sentencias alto-nivel a mltiples instrucciones. Creacin de libreras como resultado de compilaciones previas. Juntando, se crea programa ejecutable.
Interprete de Java
.10
Caractersticas: Robusto
No se interrumpe fcilmente. Evita sobreescribir o corromper memoria mediante punteros. Manejo de excepciones. Verificacin de ByteCodes (por ejemplo no acceso ilegal de memoria).
.11
Caractersticas: Seguro
No existen punteros, no acceso a zonas delicadas de memoria. Una applet no puede acceder al sistema, a los archivos de la persona que lo est viendo.
.12
Java compila el cdigo a un fichero objeto de formato independiente de la arquitectura de la mquina en que se ejecutar. Cualquier plataforma donde exista una JVM se puede ejecutar el cdigo objeto independientemente de la mquina en el que ha sido generado.
.13
Cdigo fuente se compila a un cdigo de bytes Tiempo de compilacin independientemente de la mquina. Los ByteCodes se ejecutan en una mquina hipottica que se implementa por un sistema run-time, que es dependiente de la mquina.
Tiempo de ejecucin
.14
Elementos que forman parte de arquitectura de Java sobre una plataforma genrica.
Dependiente del sistema:
JVM. Libreras fundamentales. APIs de Java que entren en contacto directo con el hardware.
.15
Caractersticas: Portable
Ms
.16
.17
.18
Caractersticas: Multithread
Ejecucin de varias tareas a la vez. Permite muchas actividades simultneas en un programa. Posee una serie de clases que facilitan su utilizacin. Mejor rendimiento interactivo y mejor comportamiento en tiempo real.
.19
Caractersticas: Dinmico
No conecta todos los mdulos que comprenden una aplicacin hasta el mismo tiempo de ejecucin. Las libreras nuevas o actualizadas no paralizan la ejecucin de las aplicaciones siempre que mantengan la API anterior.
.20
El JRE es un paquete de software desarrollado por Sun que contiene la JVM y todo lo necesario para ejecutar programas Java El JDK es otro paquete que incluye todo lo necesario para crear y ejecutar programas Java (incluye el JRE, compilador, debugger, visor de applets, Java API, entre otras herramientas para el programador). Puede descargar las ltimas versiones en www.oracle.com (1.6.0 en este momento)
21
Java API
El Java API (Application Program Interfase) es un conjunto de libreras que permiten el desarrollo de aplicaciones en Java, brinda funciones de uso comn para el programador como por ejemplo:
Creacin y manejo de elementos de GUI Manejo de archivos Funciones de red Comunicacin entre programas
22
Java API
Existen dentro de su librera clases grficas (awt y swing), las cuales permiten crear objetos grficos comunes altamente configurables y con una arquitectura independiente de la plataforma. Hay gran cantidad de herramientas para generar interfaces grficas como:
Java API
Se puede acceder a bases de datos fcilmente con JDBC, independientemente de la plataforma utilizada. Existen clases JDBC para las Bases de Datos ms comunes, entre ellas:
24
javac: El compilador Java, convierte cdigo fuente (.java) en bytecodes (.class) java: El interprete de Java este programa es el que ejecuta los bytecodes appletviewer: Un interprete Java que ejecuta applets desde un archivo HTML, tal como lo hara un navegador web javadoc: Genera documentacin de cdigo fuente en formato HTML javap: El desensamblador Java, puede obtener el cdigo fuente a partir de lso bytecodes jdb: El depurador (debugger), permite supervisar la ejecucin de los programas Java jar: Permite almacenar un programa en Java que comprende muchos .class en un solo archivo .jar (en realidad, es un .zip)
25
Compilacin y Ejecucin
Por ahora, digamos que cada clase debe estar definida en un archivo que debe llamarse igual que la clase, con extensin .java Es decir, la clase FiguraGeometrica debe declararse en un archivo llamado FiguraGeometrica.java
26
27
28
Compilacin y Ejecucin
/********************* FiguraGeometrica.java *********************/ public class FiguraGeometrica { protected int numeroLados; protected String nombreFigura; public FiguraGeometrica(int nLados) { numeroLados = nLados; } public int getNumeroLados() { return numeroLados; } public String getNombreFigura() { return nombreFigura; } }
29
Compilacin y Ejecucin
Cuando esta clase se compile, se crear un archivo llamado FiguraGeometrica.class Si el nombre del archivo .java no coincidiera con el nombre de la clase, el compilador de Java no mostrara un mensaje de error (no en todos los casos, ms adelante veremos):
OtroNombre.java:2: class FiguraGeometrica is public, should be declared in a file named FiguraGeometrica.java
Ahora veamos un par de ejemplos, una con salida por consola y otro mostrando un cuadro de dilogo:
30
Compilacin y Ejecucin
import javax.swing.*; public class FiguraGeometricaFrame { public static void main(String[] args) { FiguraGeometrica figura = new FiguraGeometrica(6); JOptionPane.showMessageDialog(null, "El numero de lados+ de la figura geometrica es: "+ figura.getNumeroLados()); System.exit(0); } }
31
Compilacin y Ejecucin
Recuerde que la compilacin se hace con: javac FiguraGeometrica.java Y la ejecucin se hace con: java FiguraGeometrica Note que en la ejecucin solo se coloca el nombre de la clase, sin la extensin El resultado de la ejecucin debe ser:
32