Está en la página 1de 40

Java Modulo 1

Introduccin y Fundamentos del lenguaje de programacin Java

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Contenido
Caractersticas del lenguaje. Breve historia (origen y versiones). Variables y Tipos de Datos. Estructuras de Decisin. Ciclos iterativos. Datos estructurados (vs. Clases). Introduccin a la POO. Uso bsico de la herramienta de desarrollo.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Breve Historia
Java fue diseado en 1990 por James Gosling, de Sun Microsystems
Fue diseado antes de que diese comienzo la era World Wide Web. Software para dispositivos electrnicos: calculadoras, microondas y la televisin interactiva.

Lenguaje que independiente de la plataforma


IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Breve Historia
El objetivo fue crear un nuevo lenguaje de programacin lo ms sencillo posible, con el objeto de que se pudiese adaptar con facilidad a cualquier entorno de ejecucin. Se conjuntaron las caractersticas esenciales que deba tener un lenguaje de programacin moderno y potente.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Por qu Java?
Portabilidad: tanto del cdigo fuente como del bytecode. Ms soporte en el lenguaje. Una amplia librera de Clases. Manejo de Errores. No usa apuntadores. (garbage collection) El manejo de threads es parte del lenguaje. Carga dinmica del las clases y una caja segura para le ejecucin de cdigo remoto.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Qu es Java?
Es un lenguaje simple, orientado a Objetos, Distribuido, interpretado, robusto, seguro, de arquitectura neutral, portable, de alto rendimiento, multihilos, y dinmico - Sun

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Qu es Java?
Un lenguaje de Programacin

Definido por Gosling, Joy y Steele en la especificacin del lenguaje Java. Una definicin de una mquina virtual (JVM). Ambientes de ejecucin para diferentes hardwares. Un conjunto estndar de APIs () : GUI, almacenamiento de datos, E/S, redes, etc.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Una plataforma

Una librera de clases

Caractersticas
Simple Seguro Portable Orientado a Objetos Robusto Multihilos De Arquitectura neutral Interpretado Alto Rendimiento Distribuido Dinmico

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Caracteristicas (cont...)
Simple

Fcil de aprender, sintaxis de C/C++, versin simplificada de C++. Los applets pueden ejecutarse sin temor a virus o a la violacin de acceso a informacin privada. Generacin de cdigo intermedio: Bytecode
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Seguro

Portable

Caracteristicas (cont...)
Orientado a Objetos

(Colocar ventajas)

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

10

Caracteristicas (cont...)
Robusto

Localizacin temprana de errores Minimizacin de errores comunes de programacin. Verificaciones a tiempo de compilacin y ejecucin. Fuertemente tipado. Permite hacer programas que realicen varias cosas al mismo tiempo. Facilita la creacin de sistemas interactivos.

Multihilos

De Arquitectura neutral
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

11

La plataforma Java

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

12

La mquina Virtual Java (JVM)


Puede verse como una computadora abstracta que es definida por una especificacin. Es una mquina imaginaria que se implementa por software . Podemos estar hablando de:

La especificacin abstracta. Una implementacin concreta Una instancia de tiempo de ejecucin

Sun public las especificaciones para la JVM para asegurar la portabilidad de las aplicaciones.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

13

La mquina Virtual Java


Cada aplicacin Java se ejecuta dentro de una instancia de tiempo de aplicacin de alguna implementacin concreta para la especificacin abstracta.

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

14

La mquina Virtual Java


Cdigo fuente

Compilador Java
Byte-codes Macintosh JVM Cdigo mquina Macintosh

Win32 JVM
Cdigo mquina Win32

UNIX JVM Cdigo mquina UNIX

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

15

El API de Java
Es una coleccin de partes de software que brindan al usuario utilidades. Ejm: GUI. Est formado por libreras o paquetes relacionados.

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

16

Un programa Simple

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

17

Compilacin y ejecucin
HelloWorld.java
Codigo fuente correr javac HelloWorld.java
compilar

java HelloWorld

HelloWorld.class
bytecode

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

18

Elementos del lenguaje


Declaraciones Tipos de Datos Operadores Estructuras de control Clases y Objetos Paquetes
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

19

Declaraciones
Declaracin de Variables

<tipo> <variable>; <tipo> <var1>, <var2>, ..., <varn>; <tipo> <var1> = <valor>; int x,y,z; int x = 9; boolean terminar = false; Cliente = new Cliente();
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Ejemplos

20

Asignaciones
Asignaciones

<tipo> <variable> = <valor>; <tipo> <variable>; <otras instrucciones>... <variable> = <valor>; int x = 4; //Declaracion con asignacin x = 9; //Se asume que x est definida c1 = new Cliente(); //Se asume que Cliente //y c1 estn definidos
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

Ejemplo

21

Tipos de Datos
Tipos primitivos:
boolean true o false char unicode! (16 bits) byte entero de 8 bits con signo. short entero de 16 bits con signo. int entero de 32 bits con signo. long entero de 64 bits con signo. float,double IEEE 754 floating point

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

22

Otros tipos de datos.


Tipos compuestos
Clases Arreglos

Los strings son soportados mediante una clase built-in class denominada String.

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

23

Conversiones de tipos
Conversin entre los tipos enteros y punto flotante.

Incluye char

No hay conversin automatica con el tipo boolean! Las conversiones se pueden forzar mediante una operacin de casting con la misma sintaxis de C/C++.
int i = (int) 1.345;
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

24

Declaraciones y Convenciones

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

25

Inicializacin

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

26

Alcances y Bloques

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

27

Operadores
Asignacin: =, +=, -=, *=, Numricos: +, -, *, /, %, ++, --, Relacionales: ==. !=, <, >, <=, >=, Booleanos: &&, ||, ! De Bits: &, |, ^, ~, <<, >>,

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

28

Operadores de asignacin

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

29

Estructuras de Control

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

30

Sentencias If

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

31

El lazo While

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

32

El lazo Do-While

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

33

La sentencia Switch

IST - PERU PACIFICO - 2012 MVA IT - ASABALU

34

Comentarios
// comentario Los caracteres desde // hasta el final de la lnea son ignorados. /* comentario */ Los caracteres entre /* y */ son ignorados /** comentario */ Los caracteres entre /** y */son ignorados y se incluyen en la generacin autmatica de la documentacin.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

35

Identificadores
Nombre dado a una variable, un mtodo o una clase. Comienzan con una letra Unicode (incluyendo _ and $) y seguido de letras y digitos. Pueden ser de cualquier longitud. Ejemplos:

Apellido Hora $PorMenos


IST - PERU PACIFICO - 2012 MVA IT - ASABALU

36

Paquetes
Se usan para encapsular los datos de manera automtica. Los paquetes de clases se cargan con la palabra clave import.
Ejemplo: import java.Date; import java.awt.*; import miPaquete.miClase;
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

37

Tipos de Clases en Java


abstract. Una clase abstracta no se instancia, sino que se utiliza como clase base para la herencia. final. Una clase final se declara como la clase que termina una cadena de herencia. public. Las clases public son accesibles desde otras clases, bien sea directamente o por herencia. Para acceder desde otros paquetes, primero tienen que ser importadas.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

38

Niveles de acceso a mtodos y atributos


public. Cualquier clase desde cualquier lugar puede acceder a las variables y mtodos. protected o friendly. Slo las subclases de la clase y nadie ms pueden acceder a las variables y mtodos. Private. Las variables y mtodos de instancia privados slo pueden ser accedidos desde dentro de la clase.
IST - PERU PACIFICO - 2012 MVA IT - ASABALU

39

Ejemplo herencia
public class Articulo { // clase padre public float precio=0; ... public void setPrecio(float elPrecio) { precio = elPrecio; } ... public float getPrecio() { return precio; } } //los mtodos y atributos de Articulo son heredados a Pelicula public class Pelicula extends Articulo {// clase hijo public void setDescripcion(String descrip) { descripcion = descrip; } ... public String getDescripcion() { return descripcion; } } IST - PERU PACIFICO - 2012 MVA IT - ASABALU

40

También podría gustarte