SlideShare una empresa de Scribd logo
Gestión de excepciones en java. Bloques try, catch y finally.
© aprenderaprogramar.com, 2006-2029
Sección: Cursos
Categoría: Lenguaje de programación Java nivel avanzado I
Fecha revisión: 2029
Resumen: Entrega nº27 curso “Lenguaje de programación Java Nivel Avanzado I”.
Autor: Manuel Sierra
APRENDERAPROGRAMAR.COM
GESTIÓN DE EXCEPCIONES
EN JAVA. CAPTURA CON
BLOQUES TRY CATCH Y
FINALLY. EJEMPLOS
RESUELTOS. (CU00927C)
Gestión de excepciones en java. Bloques try, catch y finally.
© aprenderaprogramar.com, 2006-2029
INTRODUCCIÓN: GESTIÓN EXCEPCIONES EN JAVA
A continuación vamos a ver como el lenguaje Java implementa su propio sistema de gestión de
excepciones, o como hemos mencionado anteriormente, también llamado sistema de tratamiento de
errores. También veremos los primeros ejemplos sencillos sobre la gestión de excepciones.
EL SISTEMA DE GESTIÓN DE EXCEPCIONES
El control de flujo de un programa Java sabemos hasta ahora que se lleva a cabo con sentencias del tipo
if, while, for, return, break, etc… Estas sentencias forman un conjunto de palabras reservardas que
determinan cierta funcionalidad. Pues bien, ninguna de ellas tiene en cuenta que se puedan producir
errores en tiempo de ejecución de un programa y por tanto Java necesita de un conjunto de palabras
nuevas para tener en cuenta que cualquier código puede fallar o ser mal interpretado en tiempo de
ejecución.
Vamos a ver tres de las palabras reservadas para tratamiento de excepciones:
- Try.
- Catch.
- Finally.
Aunque posteriormente veremos otras palabras más avanzadas y otras formas de tratamiento de
errores, éstas son las primeras y más básicas con las que vamos a trabajar.
De forma introductoria diremos que hay dos formas de tratar errores en Java: capturarlos o lanzarlos. El
uso de try – catch – finally corresponde a la captura de errores. Vamos a poner un símil sencillo: un
error es algo inesperado, como encontrarte un ladrón dentro de tu casa. Cuando nos encontramos con
un error podemos capturarlo (equivaldría a capturar el ladrón) o lanzarlo (equivaldría a tratar de hacer
huir al ladrón, de hacer que salga fuera del lugar donde se encuentra).
BLOQUE TRY
Try en inglés es el verbo intentar, así que todo el código que vaya dentro de esta sentencia será el
código sobre el que se intentará capturar el error si se produce y una vez capturado hacer algo con él.
Lo ideal es que no ocurra un error, pero en caso de que ocurra un bloque try nos permite estar
preparados para capturarlo y tratarlo. Así un ejemplo sería:
try {
System.out.println(“bloque de código donde pudiera saltar un error es este”);
}
Gestión de excepciones en java. Bloques try, catch y finally.
© aprenderaprogramar.com, 2006-2029
BLOQUE CATCH
En este bloque definimos el conjunto de instrucciones necesarias o de tratamiento del problema
capturado con el bloque try anterior. Es decir, cuando se produce un error o excepción en el código que
se encuentra dentro de un bloque try, pasamos directamente a ejecutar el conjunto de sentencias que
tengamos en el bloque catch. Esto no es exactamente así pero ya explicaremos más adelante todo el
funcionamiento. De momento para una mejor comprensión vamos a considerar que esto es así.
catch (Exception e) {
System.out.println(“bloque de código donde se trata el problema”);
}
Fíjate que después de catch hemos puesto unos paréntesis donde pone “Exception e”. Esto significa
que cuando se produce un error Java genera un objeto de tipo Exception con la información sobre el
error y este objeto se envía al bloque catch.
BLOQUE FINALLY
Y para finalizar tenemos el bloque finally que es un bloque donde podremos definir un conjunto de
instrucciones necesarias tanto si se produce error o excepción como si no y que por tanto se ejecuta
siempre.
finally {
System.out.println(“bloque de código ejecutado siempre”);
}
EJEMPLO SIN ERROR
A continuación vamos a ver cómo se comporta un programa con tratamiento de errores pero donde no
se produce ningún error. Escribe este código en tu editor.
/* Ejemplo Gestión de Excepciones Java aprenderaprogramar.com */
public class Programa {
public static void main (String [] args) {
try{
System.out.println("Intentamos ejecutar el bloque de instrucciones:");
System.out.println("Instrucción 1."); System.out.println("Instrucción 2.");
System.out.println("Instrucción 3, etc.");
}
catch (Exception e) { System.out.println("Instrucciones a ejecutar cuando se produce un error"); }
finally{ System.out.println("Instrucciones a ejecutar finalmente tanto si se producen errores como si no."); }
}
}
Gestión de excepciones en java. Bloques try, catch y finally.
© aprenderaprogramar.com, 2006-2029
La salida obtenida tras ejecutar el programa anterior es:
Como podemos observar, se han ejecutado todas las instrucciones del bloque try y finalmente se
ejecutó la instrucción del bloque finally. No se ejecuta el bloque catch porque no hubo error.
EJEMPLO CON ERROR
A continuación vamos a ver cómo se comporta un programa con tratamiento de errores cuando se
produce un error y cómo afecta al control de flujo del programa. Escribe este código en tu editor.
/* Ejemplo Gestión de Excepciones Java aprenderaprogramar.com */
public class Programa {
public static void main (String [] args) {
try{
System.out.println("Intentamos ejecutar el bloque de instrucciones:");
System.out.println("Instrucción 1.");
int n = Integer.parseInt("M");//error forzado en tiempo de ejecución.
System.out.println("Instrucción 2.");
System.out.println("Instrucción 3, etc.");
}
catch(Exception e){
System.out.println("Instrucciones a ejecutar cuando se produce un error");
}
finally{
System.out.println("Instrucciones a ejecutar finalmente tanto si se producen errores como si no.");
}
}
}
Se produce un error porque el método parseInt de la clase Integer espera que dentro de las comillas
llegue un número y no una letra. Por ejemplo int n = Integer.parseInt("65"); sirve para transformar el
String 65 en un int de valor 65. Al no encontrar un valor válido se produce un error de tipo
java.lang.NumberFormatException.
Gestión de excepciones en java. Bloques try, catch y finally.
© aprenderaprogramar.com, 2006-2029
La salida obtenida en este caso donde se produce error es:
Prueba a escribir dentro del bloque catch lo siguiente:
System.out.println("Se ha producido un error " +e );
Trata de interpretar lo que se visualiza en pantalla. Si tienes dudas consulta en los foros de
aprenderaprogramar.com.
Como podemos observar, ejecutamos las instrucciones del bloque try que no dan errores, pero cuando
en una instrucción se produce un error o excepción inesperada se deja de ejecutar el código del bloque
try, y pasamos a ejecutar el código del bloque catch. Hay un salto o cambio en el flujo del programa.
Finalmente se ejecutan, en todo caso, las instrucciones del bloque finally como hemos comentado
anteriormente. El bloque finally no es obligatorio, es decir, puede existir un bloque try catch y no existir
bloque finally.
CONCLUSIONES
Los errores en Java se pueden capturar o lanzar. La captura se realiza con bloques try catch, donde por
un lado tenemos el código para el caso de flujo sin problemas del programa y por otro el código con
instrucciones para el tratamiento de errores.
Próxima entrega: CU00928C
Acceso al curso completo en aprenderaprogramar.com -- > Cursos, o en la dirección siguiente:
http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=58&Itemid=180

Más contenido relacionado

DOCX
Excepciones en Java
RTF
Try catch
PPT
Gestión de errores en Java
PPT
5.manejo de excepciones
PDF
Guia demanejodeexcepcionesaserciones
PPT
Manejo De Excepciones
PDF
excepciones en java
PDF
Manejo de excepciones en Java
Excepciones en Java
Try catch
Gestión de errores en Java
5.manejo de excepciones
Guia demanejodeexcepcionesaserciones
Manejo De Excepciones
excepciones en java
Manejo de excepciones en Java

La actualidad más candente (19)

PDF
Java excepciones
PPT
Programación III (Java) - 04 Excepciones
PDF
Lab excepciones propias
PDF
05 java excepciones
PPT
Excepciones en java
PDF
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
PPTX
PPTX
Manejo de Excepciones
PDF
Uso de Excepciones en JAVA
PPT
excepciones_java en www.fiec.espol.edu.ec
PPTX
Constructores & excepciones
PPT
DOCX
Mas sobre excepciones
PPT
Excepciones
PDF
Lab excepciones
PPT
Semana 8 excepciones definidas por el usuario
PPT
Java exceptions
DOCX
Las excepciones standar
Java excepciones
Programación III (Java) - 04 Excepciones
Lab excepciones propias
05 java excepciones
Excepciones en java
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
Manejo de Excepciones
Uso de Excepciones en JAVA
excepciones_java en www.fiec.espol.edu.ec
Constructores & excepciones
Mas sobre excepciones
Excepciones
Lab excepciones
Semana 8 excepciones definidas por el usuario
Java exceptions
Las excepciones standar
Publicidad

Similar a Cu00927 c gestion excepciones java try catch finally ejemplos ejercicios (20)

PDF
Jyoc java-cap12 excepciones
PPTX
Try catch finally
PDF
Manejo de excepciones en vb
PDF
Java5
PPT
Gestion de errores en java
PPTX
PPTX
Programación Orientada a Objetos - Unidad 5 Excepciones
PDF
PPTX
Manejo de excepciones en el lenguaje java.pptx
PPT
Capitulo II
PPTX
Gestión de Excepciones
PPT
Excepciones
PPT
Excepciones
PPT
Excepciones
PPTX
Excepciones en java
PDF
JAVA ORIENTADO A OBJETOS - EXCEPCIONES
PDF
Java oo tema09_excepciones
PPT
Scjp Jug Section 2 Flow Control
PPTX
Capitulo 16- Excepciones en Java
PPTX
Excepciones.pptx
Jyoc java-cap12 excepciones
Try catch finally
Manejo de excepciones en vb
Java5
Gestion de errores en java
Programación Orientada a Objetos - Unidad 5 Excepciones
Manejo de excepciones en el lenguaje java.pptx
Capitulo II
Gestión de Excepciones
Excepciones
Excepciones
Excepciones
Excepciones en java
JAVA ORIENTADO A OBJETOS - EXCEPCIONES
Java oo tema09_excepciones
Scjp Jug Section 2 Flow Control
Capitulo 16- Excepciones en Java
Excepciones.pptx
Publicidad

Más de Uniminuto - San Francisco (20)

PPTX
Taller 32020 inducc ion estudiantes uvdgenesis
PPTX
2019 ind estudiantes uvd2 sesiones
PDF
Cambio de contrasena estudiantes nuevos.docx
PPTX
1. induccion sstga 2018 (version 4)
PPTX
Pastoral y bienestar
PPTX
Proyección social
PPTX
Presentación planeación
PPTX
Modulo2 - Calidad
PPTX
PPTX
201750 aplicación de encuestas gbi[12469]
PPTX
Presentaciones 3.1
PPTX
Funcionamiento interno de un pc
DOCX
Proyecto sintesis grado sexto tercer periodo 2016
DOCX
Formulas en excel
DOCX
Fórmulas en excel
PPTX
Arquitectura de computadores
PPTX
Microsoft excel v2
Taller 32020 inducc ion estudiantes uvdgenesis
2019 ind estudiantes uvd2 sesiones
Cambio de contrasena estudiantes nuevos.docx
1. induccion sstga 2018 (version 4)
Pastoral y bienestar
Proyección social
Presentación planeación
Modulo2 - Calidad
201750 aplicación de encuestas gbi[12469]
Presentaciones 3.1
Funcionamiento interno de un pc
Proyecto sintesis grado sexto tercer periodo 2016
Formulas en excel
Fórmulas en excel
Arquitectura de computadores
Microsoft excel v2

Último (20)

PDF
Tomo 1 de biologia gratis ultra plusenmas
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
PDF
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
DOCX
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
PDF
biología es un libro sobre casi todo el tema de biología
DOCX
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
PDF
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
DOCX
2 GRADO UNIDAD 5 - 2025.docx para primaria
PDF
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
DOCX
Tarea De El Colegio Coding For Kids 1 y 2
PDF
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
PDF
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
PDF
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
PDF
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
Tomo 1 de biologia gratis ultra plusenmas
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
biología es un libro sobre casi todo el tema de biología
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
2 GRADO UNIDAD 5 - 2025.docx para primaria
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
Tarea De El Colegio Coding For Kids 1 y 2
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
DI, TEA, TDAH.pdf guía se secuencias didacticas
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...

Cu00927 c gestion excepciones java try catch finally ejemplos ejercicios

  • 1. Gestión de excepciones en java. Bloques try, catch y finally. © aprenderaprogramar.com, 2006-2029 Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I Fecha revisión: 2029 Resumen: Entrega nº27 curso “Lenguaje de programación Java Nivel Avanzado I”. Autor: Manuel Sierra APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)
  • 2. Gestión de excepciones en java. Bloques try, catch y finally. © aprenderaprogramar.com, 2006-2029 INTRODUCCIÓN: GESTIÓN EXCEPCIONES EN JAVA A continuación vamos a ver como el lenguaje Java implementa su propio sistema de gestión de excepciones, o como hemos mencionado anteriormente, también llamado sistema de tratamiento de errores. También veremos los primeros ejemplos sencillos sobre la gestión de excepciones. EL SISTEMA DE GESTIÓN DE EXCEPCIONES El control de flujo de un programa Java sabemos hasta ahora que se lleva a cabo con sentencias del tipo if, while, for, return, break, etc… Estas sentencias forman un conjunto de palabras reservardas que determinan cierta funcionalidad. Pues bien, ninguna de ellas tiene en cuenta que se puedan producir errores en tiempo de ejecución de un programa y por tanto Java necesita de un conjunto de palabras nuevas para tener en cuenta que cualquier código puede fallar o ser mal interpretado en tiempo de ejecución. Vamos a ver tres de las palabras reservadas para tratamiento de excepciones: - Try. - Catch. - Finally. Aunque posteriormente veremos otras palabras más avanzadas y otras formas de tratamiento de errores, éstas son las primeras y más básicas con las que vamos a trabajar. De forma introductoria diremos que hay dos formas de tratar errores en Java: capturarlos o lanzarlos. El uso de try – catch – finally corresponde a la captura de errores. Vamos a poner un símil sencillo: un error es algo inesperado, como encontrarte un ladrón dentro de tu casa. Cuando nos encontramos con un error podemos capturarlo (equivaldría a capturar el ladrón) o lanzarlo (equivaldría a tratar de hacer huir al ladrón, de hacer que salga fuera del lugar donde se encuentra). BLOQUE TRY Try en inglés es el verbo intentar, así que todo el código que vaya dentro de esta sentencia será el código sobre el que se intentará capturar el error si se produce y una vez capturado hacer algo con él. Lo ideal es que no ocurra un error, pero en caso de que ocurra un bloque try nos permite estar preparados para capturarlo y tratarlo. Así un ejemplo sería: try { System.out.println(“bloque de código donde pudiera saltar un error es este”); }
  • 3. Gestión de excepciones en java. Bloques try, catch y finally. © aprenderaprogramar.com, 2006-2029 BLOQUE CATCH En este bloque definimos el conjunto de instrucciones necesarias o de tratamiento del problema capturado con el bloque try anterior. Es decir, cuando se produce un error o excepción en el código que se encuentra dentro de un bloque try, pasamos directamente a ejecutar el conjunto de sentencias que tengamos en el bloque catch. Esto no es exactamente así pero ya explicaremos más adelante todo el funcionamiento. De momento para una mejor comprensión vamos a considerar que esto es así. catch (Exception e) { System.out.println(“bloque de código donde se trata el problema”); } Fíjate que después de catch hemos puesto unos paréntesis donde pone “Exception e”. Esto significa que cuando se produce un error Java genera un objeto de tipo Exception con la información sobre el error y este objeto se envía al bloque catch. BLOQUE FINALLY Y para finalizar tenemos el bloque finally que es un bloque donde podremos definir un conjunto de instrucciones necesarias tanto si se produce error o excepción como si no y que por tanto se ejecuta siempre. finally { System.out.println(“bloque de código ejecutado siempre”); } EJEMPLO SIN ERROR A continuación vamos a ver cómo se comporta un programa con tratamiento de errores pero donde no se produce ningún error. Escribe este código en tu editor. /* Ejemplo Gestión de Excepciones Java aprenderaprogramar.com */ public class Programa { public static void main (String [] args) { try{ System.out.println("Intentamos ejecutar el bloque de instrucciones:"); System.out.println("Instrucción 1."); System.out.println("Instrucción 2."); System.out.println("Instrucción 3, etc."); } catch (Exception e) { System.out.println("Instrucciones a ejecutar cuando se produce un error"); } finally{ System.out.println("Instrucciones a ejecutar finalmente tanto si se producen errores como si no."); } } }
  • 4. Gestión de excepciones en java. Bloques try, catch y finally. © aprenderaprogramar.com, 2006-2029 La salida obtenida tras ejecutar el programa anterior es: Como podemos observar, se han ejecutado todas las instrucciones del bloque try y finalmente se ejecutó la instrucción del bloque finally. No se ejecuta el bloque catch porque no hubo error. EJEMPLO CON ERROR A continuación vamos a ver cómo se comporta un programa con tratamiento de errores cuando se produce un error y cómo afecta al control de flujo del programa. Escribe este código en tu editor. /* Ejemplo Gestión de Excepciones Java aprenderaprogramar.com */ public class Programa { public static void main (String [] args) { try{ System.out.println("Intentamos ejecutar el bloque de instrucciones:"); System.out.println("Instrucción 1."); int n = Integer.parseInt("M");//error forzado en tiempo de ejecución. System.out.println("Instrucción 2."); System.out.println("Instrucción 3, etc."); } catch(Exception e){ System.out.println("Instrucciones a ejecutar cuando se produce un error"); } finally{ System.out.println("Instrucciones a ejecutar finalmente tanto si se producen errores como si no."); } } } Se produce un error porque el método parseInt de la clase Integer espera que dentro de las comillas llegue un número y no una letra. Por ejemplo int n = Integer.parseInt("65"); sirve para transformar el String 65 en un int de valor 65. Al no encontrar un valor válido se produce un error de tipo java.lang.NumberFormatException.
  • 5. Gestión de excepciones en java. Bloques try, catch y finally. © aprenderaprogramar.com, 2006-2029 La salida obtenida en este caso donde se produce error es: Prueba a escribir dentro del bloque catch lo siguiente: System.out.println("Se ha producido un error " +e ); Trata de interpretar lo que se visualiza en pantalla. Si tienes dudas consulta en los foros de aprenderaprogramar.com. Como podemos observar, ejecutamos las instrucciones del bloque try que no dan errores, pero cuando en una instrucción se produce un error o excepción inesperada se deja de ejecutar el código del bloque try, y pasamos a ejecutar el código del bloque catch. Hay un salto o cambio en el flujo del programa. Finalmente se ejecutan, en todo caso, las instrucciones del bloque finally como hemos comentado anteriormente. El bloque finally no es obligatorio, es decir, puede existir un bloque try catch y no existir bloque finally. CONCLUSIONES Los errores en Java se pueden capturar o lanzar. La captura se realiza con bloques try catch, donde por un lado tenemos el código para el caso de flujo sin problemas del programa y por otro el código con instrucciones para el tratamiento de errores. Próxima entrega: CU00928C Acceso al curso completo en aprenderaprogramar.com -- > Cursos, o en la dirección siguiente: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=58&Itemid=180