Está en la página 1de 32

INTRODUCCIN A JAVA

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?

La tecnologa Java es un lenguaje de programacin y una plataforma.

.3

La plataforma Java 2


Una plataforma software que se ejecuta sobre otra plataforma hardware/software.


La Mquina Virtual Java (JVM) Intrprete de Java La interfaz de Programacin de Aplicaciones (API) Conjunto de clases ya desarrolladas

.4

La plataforma Java 2

.5

Caractersticas Principales
     

Sencillo Orientado a objetos Distribuido Interpretado Robusto Seguro

    

Arquitectura neutra Portable Altas prestaciones Multithread (multihilo) Dinmico

.6

Caractersticas: Sencillo


Elimina algunas de las caractersticas de C y C++:


      

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

Caractersticas: Orientado a objetos




Java trabaja con sus datos como objetos y con interfaces a esos objetos. Implementa:
    

Encapsulacin. Herencia simple. Abstraccin. Reutilizacin. Polimorfismo.

- 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.

Traduce cdigo fuente a cdigo intermedio.




Interprete de Java

Virtual Machine(JVM) (ByteCodes interpretados (ejecutados))

.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


Aplicaciones seguras ya que no acceden a zonas delicadas de memoria o de sistema




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

Caractersticas: Arquitectura neutra




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

Caractersticas: Arquitectura neutra




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

Caractersticas: Arquitectura neutra




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

all de la portabilidad bsica por ser de arquitectura independiente.

.16

Caractersticas: Altas prestaciones




Compiladores JIT (Just in time): Compilan en el momento de ejecucin.


Traslada los bytecodes al cdigo mquina de la plataforma segn los va leyendo, realizando cierto grado de optimizacin.  JIT no pierde tiempo en optimizar cdigo que no se ejecutar.


.17

Caractersticas: Altas prestaciones




Se introdujo un nuevo JIT: HotSpot.


Incluye compilador dinmico y una mquina virtual para Interpretar bytecodes.  Mejor soporte para ordenadores con varios procesadores, mayor escalabilidad.


.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

Java Development Kit (JDK) Java Runtime Environment (JRE)




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:
    

JBuilder NetBeans Fote4J Jdeveloper Eclipse


23

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:
  

Oracle PostgreSQL MySQL

24

Herramientas del JDK




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

Compilacin y Ejecucin Aplicaciones


 Por ejemplo:
/****************** HolaMundo.java******************/ class HolaMundo { public static void main (String args[]) { System.out.println("Hola Mundo !"); } }

27

Compilacin y Ejecucin Applets


 Por ejemplo:
/* HolaMundoApplet.java */ import java.applet.Applet; import java.awt.*; class HolaMundoApplet extends Applet { public void paint (Graphics g) { g.drawString (Hola Mundo !", 0, 20); } } /* HolaMundoApplet.java */ <HTML> <HEAD> <TITLE>Hello world</TITLE> </HEAD> <BODY> <APPLET CODE="HolaMundoApplet.class WIDTH=250 HEIGHT=100> </APPLET> </BODY> </HTML>

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

También podría gustarte