SlideShare una empresa de Scribd logo
1 de 6
Universidad Nacional de Ingeniería
UNI-Región Central Juigalpa
Sabatino
Programación I.
Ingeniería de Sistemas.
Excepciones en Java.
Ing.Juan AragónCruz
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
Universidad Nacional de Ingeniería
UNI-Región Central Juigalpa
Sabatino
Programación I.
Ingeniería de Sistemas.
Excepciones en Java.
Ing.Juan AragónCruz
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ódigodonde pudierasaltarunerror eseste”);
}
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 (Exceptione) {
System.out.println(“bloque de códigodonde se tratael 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{
Universidad Nacional de Ingeniería
UNI-Región Central Juigalpa
Sabatino
Programación I.
Ingeniería de Sistemas.
Excepciones en Java.
Ing.Juan AragónCruz
System.out.println(“bloque de códigoejecutadosiempre”);
}
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.
/* EjemploGestiónde ExcepcionesJavaaprenderaprogramar.com*/
publicclassPrograma{
publicstaticvoidmain(String[] args) {
try{
System.out.println("Intentamosejecutarel bloque de instrucciones:");
System.out.println("Instrucción1."); System.out.println("Instrucción2.");
System.out.println("Instrucción3,etc.");
}
catch (Exceptione) { System.out.println("Instruccionesaejecutarcuandose produce un
error"); }
finally{ System.out.println("Instruccionesaejecutarfinalmente tantosi se producenerrores
como si no.");}
}
}
La salida obtenida tras ejecutar el programa anterior es:
Gestion excepciones java
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
Universidad Nacional de Ingeniería
UNI-Región Central Juigalpa
Sabatino
Programación I.
Ingeniería de Sistemas.
Excepciones en Java.
Ing.Juan AragónCruz
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.
/* EjemploGestiónde ExcepcionesJavaaprenderaprogramar.com*/
publicclassPrograma{
publicstaticvoidmain(String[] args) {
try {
System.out.println("Intentamosejecutarel bloque de instrucciones:");
System.out.println("Instrucción1.");
intn = Integer.parseInt("M");//errorforzadoentiempode ejecución.
System.out.println("Instrucción2.");
System.out.println("Instrucción3,etc.");
}
catch (Exceptione) {
System.out.println("Instruccionesaejecutarcuandose produce unerror");
}
finally{
System.out.println("Instruccionesaejecutarfinalmentetantosi se producenerrorescomo
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.
La salida obtenida en este caso donde se produce error es:
Gestion excepciones java 2
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.
Universidad Nacional de Ingeniería
UNI-Región Central Juigalpa
Sabatino
Programación I.
Ingeniería de Sistemas.
Excepciones en Java.
Ing.Juan AragónCruz
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.
Nota: Buscar ejemplosde NullPointerExceptionyEOFException
Universidad Nacional de Ingeniería
UNI-Región Central Juigalpa
Sabatino
Programación I.
Ingeniería de Sistemas.
Excepciones en Java.
Ing.Juan AragónCruz

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Java excepciones
Java excepcionesJava excepciones
Java excepciones
 
Manejo de excepciones en Java
Manejo de excepciones en JavaManejo de excepciones en Java
Manejo de excepciones en Java
 
Excepciones
ExcepcionesExcepciones
Excepciones
 
05 java excepciones
05 java excepciones05 java excepciones
05 java excepciones
 
Gestión de Excepciones
Gestión de ExcepcionesGestión de Excepciones
Gestión de Excepciones
 
Excepciones en java
Excepciones en javaExcepciones en java
Excepciones en java
 
Mas sobre excepciones
Mas sobre excepcionesMas sobre excepciones
Mas sobre excepciones
 
Lab excepciones
Lab excepcionesLab excepciones
Lab excepciones
 
Programación III (Java) - 04 Excepciones
Programación III (Java) - 04 ExcepcionesProgramación III (Java) - 04 Excepciones
Programación III (Java) - 04 Excepciones
 
Resumen
ResumenResumen
Resumen
 
Las excepciones standar
Las excepciones standarLas excepciones standar
Las excepciones standar
 
excepciones_java en www.fiec.espol.edu.ec
excepciones_java  en www.fiec.espol.edu.ecexcepciones_java  en www.fiec.espol.edu.ec
excepciones_java en www.fiec.espol.edu.ec
 
Jyoc java-cap12 excepciones
Jyoc java-cap12 excepcionesJyoc java-cap12 excepciones
Jyoc java-cap12 excepciones
 
Resumen claudia u5
Resumen claudia u5Resumen claudia u5
Resumen claudia u5
 
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
 
Tipos de excepciones
Tipos de excepcionesTipos de excepciones
Tipos de excepciones
 
Actividad de proceso n7
Actividad de proceso n7Actividad de proceso n7
Actividad de proceso n7
 
Lab excepciones propias
Lab excepciones propiasLab excepciones propias
Lab excepciones propias
 
Semana 8 excepciones definidas por el usuario
Semana 8 excepciones definidas por el usuarioSemana 8 excepciones definidas por el usuario
Semana 8 excepciones definidas por el usuario
 
Java exceptions
Java exceptionsJava exceptions
Java exceptions
 

Destacado

Proyecto final de jabón líquido de eucalipto
Proyecto final de jabón líquido de eucaliptoProyecto final de jabón líquido de eucalipto
Proyecto final de jabón líquido de eucaliptoKathy Aguilar
 
Curso De IniciacióN Al Lenguaje C
Curso De IniciacióN Al Lenguaje CCurso De IniciacióN Al Lenguaje C
Curso De IniciacióN Al Lenguaje Cguestbc0748
 
Educacion y violencia escolar
Educacion y violencia escolarEducacion y violencia escolar
Educacion y violencia escolarJack RZ
 
camara de frio para camaron
camara de frio para camaroncamara de frio para camaron
camara de frio para camaronjose934
 
Cuerpos geometricos 2
Cuerpos geometricos 2Cuerpos geometricos 2
Cuerpos geometricos 2ninguna
 
SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1
SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1
SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1Claudia Castañeda
 
Guia participante evaluación interna
Guia participante evaluación internaGuia participante evaluación interna
Guia participante evaluación internaIgnacio De la Cruz
 
Respuestas consultas Evaluación 2011.
Respuestas consultas Evaluación 2011.Respuestas consultas Evaluación 2011.
Respuestas consultas Evaluación 2011.Gustavo Bolaños
 
Planificación estrategica - Matriz FODA
Planificación estrategica - Matriz FODAPlanificación estrategica - Matriz FODA
Planificación estrategica - Matriz FODAALEJANDRO MARCANO DIAZ
 
Ventajas Y Desventajas Del Tlc
Ventajas Y Desventajas Del TlcVentajas Y Desventajas Del Tlc
Ventajas Y Desventajas Del Tlcanny_gonzy
 
Las cinco-tentaciones-del-gerente
Las cinco-tentaciones-del-gerenteLas cinco-tentaciones-del-gerente
Las cinco-tentaciones-del-gerenteJose Reyes
 
Teaching spelling
Teaching spellingTeaching spelling
Teaching spellingitsdanimoe
 
PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO, PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...
PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO,  PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO,  PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...
PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO, PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...Adolfo Vasquez Rocca
 
The HELP Movie - Individual & Group Change Analysis
The HELP Movie - Individual & Group Change AnalysisThe HELP Movie - Individual & Group Change Analysis
The HELP Movie - Individual & Group Change AnalysisKarishma Dhage
 
T3 B Epidemilogia Diabetes
T3 B Epidemilogia DiabetesT3 B Epidemilogia Diabetes
T3 B Epidemilogia DiabetesAngel Montoya
 
Historia de la_estadistica_y_la_probabil
Historia de la_estadistica_y_la_probabilHistoria de la_estadistica_y_la_probabil
Historia de la_estadistica_y_la_probabilAldair Herrera Ferreira
 
Views Toward Nutrition and Healthful Eating Among Millennials
Views Toward Nutrition and Healthful Eating Among MillennialsViews Toward Nutrition and Healthful Eating Among Millennials
Views Toward Nutrition and Healthful Eating Among MillennialsFood Insight
 

Destacado (20)

Proyecto final de jabón líquido de eucalipto
Proyecto final de jabón líquido de eucaliptoProyecto final de jabón líquido de eucalipto
Proyecto final de jabón líquido de eucalipto
 
Curso De IniciacióN Al Lenguaje C
Curso De IniciacióN Al Lenguaje CCurso De IniciacióN Al Lenguaje C
Curso De IniciacióN Al Lenguaje C
 
Educacion y violencia escolar
Educacion y violencia escolarEducacion y violencia escolar
Educacion y violencia escolar
 
camara de frio para camaron
camara de frio para camaroncamara de frio para camaron
camara de frio para camaron
 
Cuerpos geometricos 2
Cuerpos geometricos 2Cuerpos geometricos 2
Cuerpos geometricos 2
 
SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1
SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1
SENA-LIDERAZGO Y GESTIÓN ACADÉMICA UNIDAD 1
 
marketing securitas business plan
marketing securitas business planmarketing securitas business plan
marketing securitas business plan
 
Guia participante evaluación interna
Guia participante evaluación internaGuia participante evaluación interna
Guia participante evaluación interna
 
Servicio al cliente
Servicio al clienteServicio al cliente
Servicio al cliente
 
Plan de MARKETING SECURITAS
Plan de MARKETING  SECURITASPlan de MARKETING  SECURITAS
Plan de MARKETING SECURITAS
 
Respuestas consultas Evaluación 2011.
Respuestas consultas Evaluación 2011.Respuestas consultas Evaluación 2011.
Respuestas consultas Evaluación 2011.
 
Planificación estrategica - Matriz FODA
Planificación estrategica - Matriz FODAPlanificación estrategica - Matriz FODA
Planificación estrategica - Matriz FODA
 
Ventajas Y Desventajas Del Tlc
Ventajas Y Desventajas Del TlcVentajas Y Desventajas Del Tlc
Ventajas Y Desventajas Del Tlc
 
Las cinco-tentaciones-del-gerente
Las cinco-tentaciones-del-gerenteLas cinco-tentaciones-del-gerente
Las cinco-tentaciones-del-gerente
 
Teaching spelling
Teaching spellingTeaching spelling
Teaching spelling
 
PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO, PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...
PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO,  PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO,  PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...
PETER SLOTERDIJK: EL ANIMAL ACROBÁTICO, PRÁCTICAS ANTROPOTÉCNICAS Y DISEÑO D...
 
The HELP Movie - Individual & Group Change Analysis
The HELP Movie - Individual & Group Change AnalysisThe HELP Movie - Individual & Group Change Analysis
The HELP Movie - Individual & Group Change Analysis
 
T3 B Epidemilogia Diabetes
T3 B Epidemilogia DiabetesT3 B Epidemilogia Diabetes
T3 B Epidemilogia Diabetes
 
Historia de la_estadistica_y_la_probabil
Historia de la_estadistica_y_la_probabilHistoria de la_estadistica_y_la_probabil
Historia de la_estadistica_y_la_probabil
 
Views Toward Nutrition and Healthful Eating Among Millennials
Views Toward Nutrition and Healthful Eating Among MillennialsViews Toward Nutrition and Healthful Eating Among Millennials
Views Toward Nutrition and Healthful Eating Among Millennials
 

Similar a Excepciones en Java (20)

Try catch finally
Try catch finallyTry catch finally
Try catch finally
 
Java5
Java5Java5
Java5
 
Manejo de Excepciones
Manejo de ExcepcionesManejo de Excepciones
Manejo de Excepciones
 
Manejo de excepciones en vb
Manejo de excepciones en vbManejo de excepciones en vb
Manejo de excepciones en vb
 
Programación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 ExcepcionesProgramación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 Excepciones
 
Introducción
IntroducciónIntroducción
Introducción
 
Capitulo II
Capitulo IICapitulo II
Capitulo II
 
Errores
ErroresErrores
Errores
 
Excepciones
ExcepcionesExcepciones
Excepciones
 
Java oo tema09_excepciones
Java oo tema09_excepcionesJava oo tema09_excepciones
Java oo tema09_excepciones
 
Excepciones
ExcepcionesExcepciones
Excepciones
 
Excepciones
ExcepcionesExcepciones
Excepciones
 
Gestion de errores en java
Gestion de errores en javaGestion de errores en java
Gestion de errores en java
 
Clase5 controldeflujo
Clase5 controldeflujoClase5 controldeflujo
Clase5 controldeflujo
 
Introducción a java
Introducción a javaIntroducción a java
Introducción a java
 
[ES] Manejo de datos y excepciones
[ES] Manejo de datos y excepciones[ES] Manejo de datos y excepciones
[ES] Manejo de datos y excepciones
 
Scjp Jug Section 2 Flow Control
Scjp Jug Section 2 Flow ControlScjp Jug Section 2 Flow Control
Scjp Jug Section 2 Flow Control
 
JAVA ORIENTADO A OBJETOS - EXCEPCIONES
JAVA ORIENTADO A OBJETOS - EXCEPCIONESJAVA ORIENTADO A OBJETOS - EXCEPCIONES
JAVA ORIENTADO A OBJETOS - EXCEPCIONES
 
3...3 manejo de excepciones y la clase string
3...3 manejo de excepciones y la clase string3...3 manejo de excepciones y la clase string
3...3 manejo de excepciones y la clase string
 
3...3 manejo de excepciones y la clase string
3...3 manejo de excepciones y la clase string3...3 manejo de excepciones y la clase string
3...3 manejo de excepciones y la clase string
 

Más de Juan Aragón Cruz

Ejercicios de matemática financiera
Ejercicios de matemática financieraEjercicios de matemática financiera
Ejercicios de matemática financieraJuan Aragón Cruz
 
Tabla TIR Interpolación Lineal
Tabla TIR Interpolación LinealTabla TIR Interpolación Lineal
Tabla TIR Interpolación LinealJuan Aragón Cruz
 
Trabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-i
Trabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-iTrabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-i
Trabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-iJuan Aragón Cruz
 
Ejercicios matemática financiera 2 m1 s, 2m2-s
Ejercicios matemática financiera 2 m1 s, 2m2-sEjercicios matemática financiera 2 m1 s, 2m2-s
Ejercicios matemática financiera 2 m1 s, 2m2-sJuan Aragón Cruz
 
Tabla Cálculo de días entre dos fechas.
Tabla Cálculo de días entre dos fechas.Tabla Cálculo de días entre dos fechas.
Tabla Cálculo de días entre dos fechas.Juan Aragón Cruz
 

Más de Juan Aragón Cruz (6)

Ejercicios de matemática financiera
Ejercicios de matemática financieraEjercicios de matemática financiera
Ejercicios de matemática financiera
 
Tabla TIR Interpolación Lineal
Tabla TIR Interpolación LinealTabla TIR Interpolación Lineal
Tabla TIR Interpolación Lineal
 
Trabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-i
Trabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-iTrabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-i
Trabajo uni ies análisis numérico 3 t1-s,3t2-s,3t1-i,3t2-i
 
Ejercicios matemática financiera 2 m1 s, 2m2-s
Ejercicios matemática financiera 2 m1 s, 2m2-sEjercicios matemática financiera 2 m1 s, 2m2-s
Ejercicios matemática financiera 2 m1 s, 2m2-s
 
Tabla Cálculo de días entre dos fechas.
Tabla Cálculo de días entre dos fechas.Tabla Cálculo de días entre dos fechas.
Tabla Cálculo de días entre dos fechas.
 
Juan aragón currículum
Juan aragón currículumJuan aragón currículum
Juan aragón currículum
 

Último

¡Explora el boletín del 29 abril de 2024!
¡Explora el boletín del 29 abril de 2024!¡Explora el boletín del 29 abril de 2024!
¡Explora el boletín del 29 abril de 2024!Yes Europa
 
CONTRATO DE TRABAJO, remuneraciones y otros datos
CONTRATO DE TRABAJO, remuneraciones y otros datosCONTRATO DE TRABAJO, remuneraciones y otros datos
CONTRATO DE TRABAJO, remuneraciones y otros datosJENNIFERBERARDI1
 
EMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptx
EMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptxEMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptx
EMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptxdaryel2
 
-PEIC-NUEVO de plantel educativo Venezuela
-PEIC-NUEVO de plantel educativo Venezuela-PEIC-NUEVO de plantel educativo Venezuela
-PEIC-NUEVO de plantel educativo VenezuelaJESUS341998
 
NOM-011-STPS-2001 NORMATIVA PRESENTACION
NOM-011-STPS-2001 NORMATIVA PRESENTACIONNOM-011-STPS-2001 NORMATIVA PRESENTACION
NOM-011-STPS-2001 NORMATIVA PRESENTACIONKarina224599
 
GUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdf
GUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdfGUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdf
GUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdfIsaacRobertoRamrezLe
 
FASES DE LA CONSULTORÍA- parte 1aa.pptx
FASES DE LA CONSULTORÍA- parte 1aa.pptxFASES DE LA CONSULTORÍA- parte 1aa.pptx
FASES DE LA CONSULTORÍA- parte 1aa.pptx10ColungaFloresJosSa
 

Último (7)

¡Explora el boletín del 29 abril de 2024!
¡Explora el boletín del 29 abril de 2024!¡Explora el boletín del 29 abril de 2024!
¡Explora el boletín del 29 abril de 2024!
 
CONTRATO DE TRABAJO, remuneraciones y otros datos
CONTRATO DE TRABAJO, remuneraciones y otros datosCONTRATO DE TRABAJO, remuneraciones y otros datos
CONTRATO DE TRABAJO, remuneraciones y otros datos
 
EMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptx
EMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptxEMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptx
EMBARQUE Y DESEMBARQUE VEHICULOS MILITARES .pptx
 
-PEIC-NUEVO de plantel educativo Venezuela
-PEIC-NUEVO de plantel educativo Venezuela-PEIC-NUEVO de plantel educativo Venezuela
-PEIC-NUEVO de plantel educativo Venezuela
 
NOM-011-STPS-2001 NORMATIVA PRESENTACION
NOM-011-STPS-2001 NORMATIVA PRESENTACIONNOM-011-STPS-2001 NORMATIVA PRESENTACION
NOM-011-STPS-2001 NORMATIVA PRESENTACION
 
GUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdf
GUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdfGUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdf
GUIA DOCENTE NEUMOLOGIA 2024 guia guia.pdf
 
FASES DE LA CONSULTORÍA- parte 1aa.pptx
FASES DE LA CONSULTORÍA- parte 1aa.pptxFASES DE LA CONSULTORÍA- parte 1aa.pptx
FASES DE LA CONSULTORÍA- parte 1aa.pptx
 

Excepciones en Java

  • 1. Universidad Nacional de Ingeniería UNI-Región Central Juigalpa Sabatino Programación I. Ingeniería de Sistemas. Excepciones en Java. Ing.Juan AragónCruz 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
  • 2. Universidad Nacional de Ingeniería UNI-Región Central Juigalpa Sabatino Programación I. Ingeniería de Sistemas. Excepciones en Java. Ing.Juan AragónCruz 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ódigodonde pudierasaltarunerror eseste”); } 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 (Exceptione) { System.out.println(“bloque de códigodonde se tratael 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{
  • 3. Universidad Nacional de Ingeniería UNI-Región Central Juigalpa Sabatino Programación I. Ingeniería de Sistemas. Excepciones en Java. Ing.Juan AragónCruz System.out.println(“bloque de códigoejecutadosiempre”); } 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. /* EjemploGestiónde ExcepcionesJavaaprenderaprogramar.com*/ publicclassPrograma{ publicstaticvoidmain(String[] args) { try{ System.out.println("Intentamosejecutarel bloque de instrucciones:"); System.out.println("Instrucción1."); System.out.println("Instrucción2."); System.out.println("Instrucción3,etc."); } catch (Exceptione) { System.out.println("Instruccionesaejecutarcuandose produce un error"); } finally{ System.out.println("Instruccionesaejecutarfinalmente tantosi se producenerrores como si no.");} } } La salida obtenida tras ejecutar el programa anterior es: Gestion excepciones java 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
  • 4. Universidad Nacional de Ingeniería UNI-Región Central Juigalpa Sabatino Programación I. Ingeniería de Sistemas. Excepciones en Java. Ing.Juan AragónCruz 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. /* EjemploGestiónde ExcepcionesJavaaprenderaprogramar.com*/ publicclassPrograma{ publicstaticvoidmain(String[] args) { try { System.out.println("Intentamosejecutarel bloque de instrucciones:"); System.out.println("Instrucción1."); intn = Integer.parseInt("M");//errorforzadoentiempode ejecución. System.out.println("Instrucción2."); System.out.println("Instrucción3,etc."); } catch (Exceptione) { System.out.println("Instruccionesaejecutarcuandose produce unerror"); } finally{ System.out.println("Instruccionesaejecutarfinalmentetantosi se producenerrorescomo 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. La salida obtenida en este caso donde se produce error es: Gestion excepciones java 2 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.
  • 5. Universidad Nacional de Ingeniería UNI-Región Central Juigalpa Sabatino Programación I. Ingeniería de Sistemas. Excepciones en Java. Ing.Juan AragónCruz 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. Nota: Buscar ejemplosde NullPointerExceptionyEOFException
  • 6. Universidad Nacional de Ingeniería UNI-Región Central Juigalpa Sabatino Programación I. Ingeniería de Sistemas. Excepciones en Java. Ing.Juan AragónCruz