Introducción a java
UNIDAD 1.- INTRODUCCIÓN A JAVA Historia de java
Creado por Sun Microsystems Inc. en 1990, como un proyecto para desarrollar un sistema que controlara electrodomésticos. Se pretendía crear un hardware polivalente, con
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors
INTRODUCCION A LA PROGRAMACION EN JAVA
Índice Paso
de parámetros en tiempo de ejecución Métodos static Atributos static Try-catch-finally Throws/throw
v.2007.02
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC 2
1
Paso de Parámetros
En el main (public static void main(String[ ] args) – String[ ] args
¿Cómo pasar parámetros en tiempo de ejecución en el Eclipse?
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC
v.2007.02
3
Static: definición y uso (1)
static como modificador de un método significa que no tienes que crear un objeto para ejecutar ese método. – Ejemplo: Math.random();
Son adecuados para métodos u objetos que se prevé se van a usar mucho y que vale con una única instancia (o ninguna) de ellos. En contra, se asemejan a funciones y variables globales (en otros lenguajes de programación). Desde los métodos static sólo podemos acceder a métodos y atributos estáticos. – public static void main(String[ ] args ( es un método static) – Cannot make a static reference to the non-static (field or method) x
v.2007.02
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC 4
2
Static: definición y uso (2)
static como modificador de un atributo significa: – Todos los objetos de esa clase comparten ese atributo – Si un atributo no es estático cada objeto tiene su propio atributo ( una dirección de memoria diferente para cada atributo con el mismo nombre de cada objeto) – Ejemplo
Los métodos y atributos static es quitar a JAVA la POO.
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC
v.2007.02
5
Manejo de Errores con Excepciones (1)
Ocurren errores: – – – –
¿qué sucede realmente después de que ha ocurrido el error? ¿Cómo se maneja el error? ¿Quién lo maneja?, ¿Puede recuperarlo el programa?
En otros leguajes se tratan junto con el código del programa; Java utiliza excepciones. Una excepción es un evento que ocurre durante la ejecución del programa que interrumpe el flujo normal de las sentencias.
v.2007.02
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC 6
3
Manejo de Errores con Excepciones (2) Cuando dicho error ocurre dentro de un método Java, el método crea un objeto 'exception' y lo maneja fuera, en el sistema de ejecución. Un manejador de excepción (captura la excepción) es considerado adecuado si el tipo de la excepción lanzada es el mismo que el de la excepción manejada por el manejador. Ventajas: Separar manejo de errores del código, agrupa y diferencia los tipos de errores.
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC
v.2007.02
7
Manejo de Errores con Excepciones (3) 2 1
JAVA
v.2007.02
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC 8
4
Manejo de Errores con Excepciones (4)
Ejemplo: errores durante la manipulación de un array: – El índice está fuera del rango del tamaño del array. – El elemento que se quiere insertar en el array no es del tipo correcto. – El elemento que se está buscando no está en el array. – O métodos que querrían manejar todas las excepciones de esa categoria (todas las excepciones de array), y otros métodos podría manejar sólo algunas excepciones específicas (como la excepción de índice no válido).
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC
v.2007.02
9
Manejo de Errores con Excepciones (5)
Bloque try/catch/finally – try:Codigo que podría generar excepciones • Ver en la API si los métodos que utilizamos generan excepciones
– catch (manejador de excepciones): la excepción que se lance en el try es recogida por el catch. • Hay un catch por cada excepción.
– finally: un tipo de limpieza, se utiliza para cerrar conexiones, archivos…
Si no queremos recoger dichas excepciones, debemos de avisar que dicho método puede lanzarlas. – Utilizamos la palabra throws
v.2007.02
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC 10
5
Ejemplo Programa sin recoger la Excepción
Salida del Programa
Sin finally Recogiendo la Excepción y con finally
v.2007.02
FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS Departament d’Arquitectura de Computadors - UPC 11