USO DE EXCEPCIONES EN JAVA LSC. Natalia Rodríguez Castellón.

Slides:



Advertisements
Presentaciones similares
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE (SL-110) CAPÍTULO 13 Ing. Ronald Criollo.
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.
Archivos de Texto. Introducción Los archivos son una secuencia de bits que se guarda en el disco duro. La ventaja de utilizar archivos es que los datos.
EXCEPCIONES UNIDAD 5.
Programación Interactiva Manejo de 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:.
MANEJO DE EXCEPCIONES EN C++
Excepciones Las excepciones son señales (en forma de objeto) que se generan en ejecución en casos de errores, para que puedan ser gestionadas en el programa.
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
Informática II 1 Diego Fernando Serna RestrepoSemestre 2011/2.
1.2 Sintaxis del lenguaje Java.
UNIVERSIDAD LATINA (UNILA)
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.
Manejo de Excepciones Agustín J. González ELO329.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
El lenguaje de programación Java
Tema 11: Excepciones Antonio J. Sierra.
Introducción a Java (2ª parte) - excepciones, colecciones, i/o, … -
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4 th Ed Chapter Chapter 8 Excepciones y afirmaciones o invariantes.
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.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA CUATRO CONTROL DE FLUJOS, EXCEPCIONES Y ASERSIONES.
Programación orientada a objetos Capítulo 12 Manejo de errores.
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.
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.
ELO3291 Manejo de Excepciones Lectura sugerida de texto en linea: Eckel, Bruce. Thinking About C++, 2nd Edition, Prentice-Hall, Gratis en
Programación avanzada en Java Miguel Ángel Corella 26 de Septiembre de 2005.
Manejo de errores: Excepciones en Java
Programación orientada a objetos Capítulo 12 Manejo de errores.
EXCEPCIONES. Java incorpora soporte para manejar situaciones anómalas conocidas como EXCEPCIONES que pueden ocurrir durante la ejecución de un programa.
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.
Desarrollador Profesional de Juegos Programación III Unidad I El manejador universal.
:: 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.
Desarrollador Profesional de Juegos Programación III Unidad I Excepciones Tipos.
:: 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,
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Manejo de Excepciones made by cristhian.. !!.  Errores que se pueden producir durante la ejecucion de una aplicacion y que podemos controlar o manejar.
Excepciones Diseño y manejo de excepciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 5 Versión
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Manejo de errores: Excepciones en Java
Manejo de errores: Excepciones en Java
Manejo de errores: Excepciones en Java
Manejo de errores: Excepciones en Java
Programación Orientada a Objetos
Manejo de errores: Excepciones en Java
Manejo de excepciones en Java
Programación Orientada a Objetos
Manejo de Excepciones y otros
Transcripción de la presentación:

USO DE EXCEPCIONES EN JAVA LSC. Natalia Rodríguez Castellón

Excepciones Una excepción es un evento que ocurre durante la ejecución de un programa que rompe el flujo normal de ejecución. Cuando se habla de excepciones nos referimos a un evento excepcional. Se pueden generar excepciones de diferentes tipos como: Errores de hardware (falla de disco), de programa (acceso fuera de rango en arreglo, divisiones entre cero), apertura de archivo inexistente, etc. Cuando se produce una excepción dentro de un método de Java, éste crea un objeto que contiene información sobre la excepción y lo pasa al código llamador. La rutina receptora de la excepción es responsable de reaccionar a tal evento inesperado.

Excepciones La rutina receptora de la excepción es responsable de reaccionar a tal evento inesperado. Cuando creamos un objeto para la excepción y lo pasamos al código llamador decimos que lanzamos una excepción (Throw an exception) Decimos que el manejador atrapa la excepción (catch the exception)

Excepciones Otras ventajas de las excepciones son: Propaga los errores hacia atrás en la secuencia de llamados anidados. Se agrupan los errores según su naturaleza. En Java los objetos lanzados deben ser instancias de clases derivadas de Throwable. Ej. Throwable e = new IllegalArgumentException(“Stack underflow”); throw e; O alternativamente throw new IllegalArgumentException(“Stack underflow”); Si una excepción no es procesada, debe ser relanzada.

Manejo de Excepciones El manejo de excepciones se logra con el bloque try try { // código } catch (StackError e ) { // código que se hace cargo del error reportado en e } El bloque try puede manejar múltiples excepciones: try { // código } catch (StackError e ) { // código para manejar el error de stack } catch (MathError me) { // código para manejar el error matemático indicado en me. }

Captura de Excepciones (completo) El bloque try tiene la forma general: try { //sentencias } catch (e-type1 e ) { // sentencias } catch (e-type2 e ) { // sentencias }... finally { //sentencias } La cláusula finally es ejecutada con posterioridad cualquiera sea la condición de término del try (sin o con error). Esta sección permite dejar las cosas consistentes antes del término del bloque try.

Ventajas de usar excepciones: Separar código de casos de error Vamos a crear un programa que divida dos números. Supongamos que los números se guardan en dos strings. En esta situación se pueden producir dos excepciones NumberFormatException, si se introducen caracteres no numéricos y ArithmeticException si se divide entre cero.

Ventajas de usar excepciones: Separar código de casos de error public class Excepciones { public static void main(String[] args) { String str1="12"; String str2="0"; String respuesta; int numerador, denominador, cociente; try{ numerador=Integer.parseInt(str1); denominador=Integer.parseInt(str2); cociente=numerador/denominador; respuesta=String.valueOf(cociente); }catch(NumberFormatException ex){ respuesta="Se han introducido caracteres no numéricos"; }catch(ArithmeticException ex){ respuesta="División entre cero"; } System.out.println(respuesta); }

Captura de Excepciones: Ejemplo 2 public class Adicion { public static int suma(int x, int y) throws Exception { if (x < 0 || y < 0) throw new Exception("Número no natural"); else return x + y; }

Captura de Excepciones: Ejemplo 2 import java.util.Scanner; public class usaAdicion { public static void main(String[] args) { Adicion obj=new Adicion(); Scanner leer=new Scanner(System.in); int op; do{ System.out.println("1.- Suma Sin excepcion"); System.out.println("2.- Suma Con excepcion"); System.out.println("3.- Salir"); System.out.println("Opcion a elegir----> "); op=leer.nextInt(); switch(op) {

Captura de Excepciones: Ejemplo 2 case 1: try {System.out.println(obj.suma(3, 2)); }catch(Exception e) {System.out.println(e);} break; case 2: try { System.out.println(obj.suma(3,-2)); }catch(Exception e) {System.out.println(e);} break; case 3: System.out.println("Gracias por utilizar el sistema"); break; default : System.out.println("Opcion Invalida"); } }while(op!=3); }

Tipos de Excepciones Las hay de dos tipos : Aquellas generadas por el lenguaje Java. Éstas se generan cuando hay errores de ejecución, como al tratar de acceder a métodos de una referencia no asignada a un objeto, división por cero, etc. Aquellas no generadas por el lenguaje, sino incluidas por el programador. Las que el compilador revisa por la captura de las excepciones lanzadas por los objetos usados en el código. Si una excepción no es capturada debe ser relanzada.

public static void doio (InputStream in, OutputStream out) throws IOException // en caso de más de una excepción throws exp1, exp2 { int c; while (( c=in.read()) >=0 ) { c= Character.toLowerCase( (char) c); out.write( c ); } } Alternativamente: public static void doio (InputStream in, OutputStream out) throws Throwable { int c; try { while (( c=in.read()) >=0 ) { c= Character.toLowerCase( (char) c); out.write( c ); } } catch ( Throwable t ) { throw t; } } !!! Si el método usa la cláusula throw debe indicarlo en su declaración con la cláusula throws. Si la excepción no es capturada, se entiende reenviada Reenviando Excepciones En este caso el método envía una excepción - que aquí corresponde al mismo objeto capturado -por lo tanto debe declarase en la cláusula throws.

Creación de excepciones propias Siempre es posible lanzar alguna excepción de las ya definidas en Java (IOException por ejemplo). También se puede definir nuevas excepciones creando clases derivadas de las clases Error o Exception.

Jerarquía de Excepciones Java prohibe crear subclases de Throwable. Cuando creemos nuestras excepciones, serán subclases de Exception. Java no obliga a manejar o reenviar RuntimeException.