Programación avanzada en Java Miguel Ángel Corella 26 de Septiembre de 2005.

Slides:



Advertisements
Presentaciones similares
Introducción a C#.
Advertisements

Java nos ofrece System.out para escribir en pantalla, pero también tenemos System.in para leer. System.in es un objeto de una clase de java que se llama.
Ayudantía Pre-Actividad 5 Multimedios. Ayudantía Pre-Actividad 5 (1) creación de varias clases, y composición (2) manejo de threads (3) manejo de excepciones.
Exceptions y Assertions Introducción a la terminología Bloques: try, catch Uso de finally Bloques: try, catch, finally Categorías de Exceptions Excepciones.
Curso de java básico (scjp)
EXCEPCIONES UNIDAD 5.
Programación Interactiva Manejo de Excepciones
Instrucciones y excepciones
Manejo de errores y excepciones
Clases Extendidas La clase extendida hereda los campos y métodos de la clase de la cual extiende. La clase original se conoce como superclase y la clase.
Programación en Java Instructor:.
Archivos Implementar un método que lea una secuencia de números enteros de un archivo y compute la cantidad de elementos leídos.
MANEJO DE EXCEPCIONES EN C++
Arquitectura CLARO-TECNOTREE CAPITULO 4: Excepciones
Capitulo 4 Excepciones.
Siguiente Excepciones Introducción. AnteriorSiguiente Definición Una excepción es un evento que ocurre durante la ejecución de un programa que desestabiliza.
Informática II Prof. Dr. Gustavo Patiño MJ
1.2 Sintaxis del lenguaje Java.
UNIVERSIDAD LATINA (UNILA)
RMI (Remote Method Invocation)
Rosalía Laza Fidalgo Reyes Pavón Rial Curso
Archivos Contenido: Archivos de Texto Archivos de Acceso Aleatorio
Excepciones y archivos Info 033. Exception El término Exception es la palabra corta para la frase "evento excepcional." Definition: Una excepción es un.
Control de excepciones
Manejo de excepciones en Java
INSTITUTO TECNOLOGICO DE TEHUACAN Ingeniería en sistemas computacionales Curso de apoyo a la titulación EXCEPCIONES EN JAVA Diciembre de 2008.
Tema 6: Clases Antonio J. Sierra.
Manejo de Excepciones Agustín J. González ELO329.
Tema 11: Excepciones Antonio J. Sierra.
Introducción a Java (2ª parte) - excepciones, colecciones, i/o, … -
Lenguaje Java Fundamentos del lenguajes de programación
El lenguaje de programación Java
Programación Orientada a Objetos Temario Excepciones – Definición. – Funcionalidad – Tipos de Excepciones – API de las Excepciones – Captura de Excepciones.
Computación II Unidad X Manejo de Excepciones. Presentación de la Unidad Objetivos: –Saber manejar situaciones inesperadas dentro de un programa –Comprender.
USO DE EXCEPCIONES EN JAVA LSC. Natalia Rodríguez Castellón.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA CUATRO CONTROL DE FLUJOS, EXCEPCIONES Y ASERSIONES.
Programación avanzada en Java Miguel Ángel Corella 23 de Septiembre de 2005.
Manejo de excepciones en Java ELO329: Diseño y Programación Orientados a Objetos Agustín J. González.
Programación Orientada a Objetos Unidad 4 Excepciones Universidad de Chile Departamento de Ciencias de la Computación.
Unidad III Manejo de Excepciones en Java y C++
Excepciones Unidad 5.
Hola mundo. 2 En Java para indicar el inicio y fin de un bloque de instrucciones utiliza las llaves { } es decir: { Inicio de instrucciones para la clase.
1 Manejo de Excepciones y otros Agustín J. González ELO-329.
Programación Interactiva Manejo de Excepciones Escuela de Ingeniería de Sistemas y Computación Facultad de Ingeniería Universidad del Valle.
Java.
Programación avanzada en Java Miguel Ángel Corella 16 de Septiembre de 2005.
ELO3291 Manejo de Excepciones Lectura sugerida de texto en linea: Eckel, Bruce. Thinking About C++, 2nd Edition, Prentice-Hall, Gratis en
Manejo de errores: Excepciones en Java
Programación orientada a objetos Capítulo 12 Manejo de errores.
Detalles Generales sobre Java
Tratamiento de excepciones
Manejo de errores: Excepciones en Java ELO329: Diseño y Programación Orientados a Objetos.
ELO3291 Manejo de Excepciones Agustín J. González ELO329.
Definición y cumplimiento de responsabilidades Giovanni Hernández P. Nivel 4.
MANEJO DE EXCEPCIONES. 21/11/2005 E.T.S de Ingenieros de Telecomunicacion.2 Índice ¿Qué es una excepción? Tipos de situaciones. Manejo de excepciones.
¿Qué son? – tipos – manejo - ejemplos
Metodología de Programación Ayudantía 4 lelagos.ublog.cl 2009.
Algoritmos y Programación III 4. Colecciones, excepciones Carlos Fontela, 2006.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Desarrollador Profesional de Juegos Programación III Unidad I Capturar Excepciones.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 4 Versión Diseño de tipos Igualdad, representación, código,
Excepciones Diseño y manejo de excepciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 5 Versión
Diseño y Programación Orientada a Objetos
Manejo de errores: Excepciones en Java
Manejo de errores: Excepciones en Java
Lenguaje de Programación Java
Programación Orientada a Objetos
Manejo de excepciones en Java
Programación Orientada a Objetos
Transcripción de la presentación:

Programación avanzada en Java Miguel Ángel Corella 26 de Septiembre de 2005

Excepciones

Excepciones (I) Interrupciones de ejecución y/o saltos dentro de un programa de manera independiente a su localización. El salto va acompañado de cierta información referente a la excepción (p.e. tipo de excepción, motivo…). Utilidad principal: Tratamiento de errores. –throw : Lanza una excepción y envía información sobre el error ocurrido. –catch : Recoge la excepción y la información enviada.

Excepciones (y II) try {... obj.f ();... } catch (DivisionCero obj) {... } void f () throws DivisionCero {... if (...) throw new DivisionCero (x, y);... }

Ejemplo desarrollado (I) Lanzamiento de excepciones: class CuentaBancaria {... boolean bloqueada;... void retirar (long cantidad) throws SaldoInsuficiente, CuentaBloqueada { if (bloqueada) throw new CuentaBloqueada (numero); else if (cantidad > saldo) throw new SaldoInsuficiente (numero, saldo); else saldo -= cantidad; }

Ejemplo desarrollado (II) Clases para excepciones: class SaldoInsuficiente extends Exception { long numero, saldo; SaldoInsuficiente (long num, long s) { numero = num; saldo = s; } String descripcion () { return "Saldo insuficiente en cuenta " + numero + "\nDisponible: " + saldo; } class CuentaBloqueada extends Exception { long numero; CuentaBloqueada (long num) { numero = num; } String descripcion () { return "La cuenta " + numero + " esta bloqueada"; }

Ejemplo desarrollado (III) Captura y procesamiento de excepciones: static public void main (String args[]) { try { new CuentaBancaria ().retirar (100000); } catch (SaldoInsuficiente excep) { System.out.println (excep.descripcion ()); } catch (CuentaBloqueada excep) { System.out.println (excep.descripcion ()); } Se ejecuta el primer catch de tipo compatible

Ejemplo desarrollado (y IV) ¿Y si no se capturan las excepciones? static public void main (String args[]) throws CuentaBloqueada, SaldoInsuficiente { CuentaBancaria cuenta = new CuentaBancaria (); cuenta.saldo = 1000; cuenta.retirar (2000); }

Características de excepciones Forman parte de la interfaz de un objeto. Si un método deja ocurrir una excepción (no la captura) se debe declarar en su cabecera con throws. Un método no puede declarar más excepciones que las que declara su clase padre. Si un método sobreescrito emite una excepción no declarada en el padre, es obligatorio procesarla dentro del método sobreescrito.

Excepciones predefinidas Java genera los errores de ejecución en forma de excepciones. –Punteros a null. –Rangos de un array. –Aritmética. Generalmente no se capturan, porque son fácilmente evitables con comprobaciones en el código.

Algunas excepciones básicas RuntimeException IndexOutOfBoundsException ArithmeticException EmptyStackException NullPointerException ClassCastException Exception AWTException IOException Excepciones definidas por el programador Excepciones definidas por el programador EOFException FileNotFoundException

Ventajas de las excepciones Separación del tratamiento de errores del resto del código del programa. –Evitar manejos de códigos de error. –Evitar alteración del flujo de un programa. Propagación de errores a lo largo de la pila de llamadas a métodos. –Evitar retornos continuos en caso de error. –Evitar la necesidad de argumentos adicionales. Agrupamiento y definición de tipos de errores como clases. –Jerarquías de excepciones. –Tratar errores a diferentes niveles de especifidad.

Ejemplo: Tratamiento de errores (I) Sin tratamiento de errores: readFile { open the file; determine its size; allocate that much memory; read the file into memory; close the file; }

Ejemplo: Tratamiento de errores (II) Tratamiento sin excepciones: errorCodeType readFile { initialize errorCode = 0; open the file; if (theFileIsOpen) { determine the length of the file; if (gotTheFileLength) { allocate that much memory; if (gotEnoughMemory) { read the file into memory; if (readFailed) errorCode = -1; } else errorCode = -2; } else errorCode = -3; close the file; if (theFileDidntClose && errorCode == 0) errorCode = -4; else errorCode = errorCode & -4; } else errorCode = -5; return errorCode; }

Tratamiento con excepciones: Ejemplo: Tratamiento de errores (y III) readFile { try { open the file; determine its size; allocate that much memory; read the file into memory; close the file; } catch (fileOpenFailed) { doSomething; } catch (sizeDeterminationFailed) { doSomething; } catch (memoryAllocationFailed) { doSomething; } catch (readFailed) { doSomething; } catch (fileCloseFailed) { doSomething; } }

Programación avanzada en Java Miguel Ángel Corella 26 de Septiembre de 2005