clase2

25
JAVA http://java.sun.com

Upload: rilara

Post on 14-Jun-2015

1.707 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Clase2

JAVA

http://java.sun.com

Page 2: Clase2

Qué es Java?

Java es un lenguaje de programación orientado a objetos portable a toda plataforma y que permite desarrollar aplicaciones distribuidas.

Page 3: Clase2

Historia de Java• Desarrollado por Sun Microsytem • Intentaba solucionar la incompatibilidad

– Entre las arquitecturas de hardware y software.

• Se desarrollo el lenguaje Oak, parecido a C++,

– Pero portable y de menor complejidad.• Se le añadio la capacidad de

– Crear aplicaciones distribuidas para la Internet,

– Y se le cambio de nombre por Java.

Page 4: Clase2

Características de Java

• Simple• Orientado a Objetos• Distribuido• Robusto• Arquitectura Neutral• Seguro• Portable• Interpretado• Multithreaded• Dinámico

Page 5: Clase2

Simple

• Java se diseñó parecido a C++ para facilitar un rápido y fácil aprendizaje.

• Reduce un 50% los errores más comunes de C++ al eliminar características, como:– Aritmética de punteros.– Estructuras (struct).– Definición de tipos (typedef).– Macros (#define).– Necesidad de liberar memoria.– Herencia Múltiple.

Page 6: Clase2

Orientado a Objetos

• Java fue diseñado como un lenguaje orientado a objetos desde el principio.

• Soporta las características propias del Paradigma Orientado a Objetos.

Page 7: Clase2

Distribuido

• Construido con extensas capacidades de interconexión TCP/IP.

• Librerías de rutina para interactuar con protocolos http y ftp.

• Java proporciona las librerías y herramientas para que los programas puedan ser distribuidos, es decir que corran en varias máquinas, interactuando.

Page 8: Clase2

Robusto

• Java proporciona numerosas comprobaciones en la compilación y en tiempo de ejecución.

• El chequeo de los tipos de datos ayuda a detectar errores.

• Se comprueban los límites de los arreglos.• El manejo de memoria en Java es simple, no

hay aritmética de punteros y no requiere de liberación explícita de memoria puesto que tiene un recolector de basura (garbage collector).

Page 9: Clase2

Arquitectura Neutral

• Java es de arquitectura neutral es decir es independiente de la plataforma de software o hardware.

• El formato bytecodes de Java es el formato intermedio de arquitectura neutral que permite transportar código entre múltiples plataformas de hardware y software.

• El bytecode se ejecuta sobre cualquier plataforma de hardware y software que disponga de la JVM.

Page 10: Clase2

Java Virtual Machine (JVM)

• Toma el programa compilado (bytecodes) y convierte sus instrucciones en comandos que maneja el sistema operativo.

• Conocido tambien como Java Interpreter.

Page 11: Clase2

Java Virtual Machine

Page 12: Clase2

Arquitectura Neutral

Page 13: Clase2

Portable

A parte de la arquitectura independiente, java implementa otros estándares de portabilidad.– Los tamaños de los tipos de datos de Java

son los mismos para cualquier plataforma.– Construye sus interfases de usuario en un

sistema abstracto de ventanas, de forma que las ventanas puedan ser implantadas en entornos Unix, PC o Mac.

Page 14: Clase2

Seguro

Debido a que Java permite hacer programas distribuidos, tiene un alto control de seguridad en las aplicaciones.– El verificador de bytecodes detecta los fragmentos

de código ilegal.• No permite falsificar punteros.• No permite violar los derechos de acceso sobre los

objetos.

– El cargador de clases distingue entre los archivos locales y los de la red. Esto imposibilita que una clase suplante a una predefinida.

Page 15: Clase2

Interpretado

• El compilador de Java genera bytecodes (código de bytes) para la JVM. El interprete incorporado en la JVM es el que permite ejecutar el programa.

• El bytecode puede ejecutarse sobre cualquier plataforma que tenga la JVM implementada.

Page 16: Clase2

Multithreaded

• Java soporta múltiples hilos de ejecución (threads) en un mismo programa.

• Un thread es un subproceso.• Java permite manejar múltiples threads

en un programa, ejecutándose concurrentemente y llevando a cabo tareas distintas.

Page 17: Clase2

Dinámico

• El modelo de ejecución de Java permite cargar dinámicamente código conforme se va necesitando.

• Las clases sólo se enlazan a medida que son necesitadas.

• Se pueden enlazar nuevos módulos de código, procedente de fuentes muy variadas, incluso desde la Red.

Page 18: Clase2

J2SE

• El J2SE (Java 2 Platform, Standard Edition), es una herramienta que provee Sun para desarrollar y ejecutar programas hechos en Java.

• Java a tenido varias versiones: – JDK (java development kit: v1.1, v1.0). – Java 2 SDK (software development kit) : v1.2, v1.3,

v1.4, v 5.0.

• Dirección para bajar el J2SE v 5.0:–    http://java.sun.com/j2se/1.5.0/download.jsp

Page 19: Clase2

Integrated Development Environment

• Eclipse• Jcreator• BlueJ• Symantec Visual Café• Borland J. Builder• Visual Age for Java• IDEA• Forte for Java

Page 20: Clase2

Aplicaciones independientes, Applets y Servlets

• Las Aplicaciones independientes (stand-alone) se ejecutan bajo un sistema operativo.

• Los Applets son aplicaciones que se ejecutan bajo un web browser.

• Los Servlets son aplicaciones que se ejecutan bajo un servidor web.

Page 21: Clase2

Introducción al lenguaje Java

• El código fuente de Java se guarda en archivos con extensión .java

• Una vez que se compila el archivo .java se transforma en un archivo .class (bytecode).

Page 22: Clase2

Ambiente de Programación de Java

Page 23: Clase2

• Para compilar:– javac HolaMundoApp.java

• Para ejecutar:– java HolaMundoApp

• Java diferencia entre mayúsculas y minúsculas.

Page 24: Clase2

Complilando y Corriendo su Primer Programa en Java

class HolaMundo { public static void main(String[] args) { System.out.println(“Hola Mundo!"); //Mostrar la cadena de caracteres. } } Compilar: javac HolaMundo.java Ejecutar: java HolaMundo

Page 25: Clase2

Librerías de clases

• Es un grupo de clases o interfases diseñado para ser usado en otros programas.

• La API de Java (Application Programming Interface) es un conjunto de librerías de clases o interfases que pueden ser reutilizadas.

• La dirección web de la documentación de la API es:

– http://java.sun.com/j2se/1.5.0/docs/api/.• Los paquetes son una manera de agrupar clases e

interfases relacionadas.– Ejemplo de paquete: java.applet.Applet