KnowledgeCity

Excepciones en Java

En las Expresiones de Java, aprenderá qué son las excepciones (problemas durante la ejecución de un programa) y cómo podemos usarlas (manejarlas…

En las Expresiones de Java, aprenderá qué son las excepciones (problemas durante la ejecución de un programa) y cómo podemos usarlas (manejarlas antes de que el programa se cancele). Aprenderá sobre los diferentes tipos de excepciones (incorporadas y definidas por el usuario, marcadas y no marcadas) y luego descubrirá cómo manejarlas (qué hacer cuando suceden), agruparlas (para que no tengamos que escribir código para cada excepción, y aprenderá sobre lanzar y capturar excepciones (donde podemos identificar problemas antes de que sucedan). Finalmente, hablamos sobre las clases de excepción (parte de la clase lanzable) y cómo anidar excepciones (una excepción dentro de otra)

Objetivos de aprendizaje

  • Describir cómo usar excepciones
  • Identificar los diferentes tipos de excepciones
  • Usar clases de excepciones
  • Explicar cómo anidar excepciones

Instructor: Cliff Brozo

Duración: 33m · 5 lecciones
Nivel: Intermediate
Idioma: Español

Habilidades que obtendrás

Gestión de excepcionesJava (lenguaje de programación)API de JavaPalabras clave de JavaSintaxis de JavaGestión por excepción

Lo que aprenderás

  • Describir cómo usar excepciones para manejar problemas que ocurren durante la ejecución del programa antes de que el programa se aborte
  • Identificar los diferentes tipos de excepciones, incluyendo excepciones integradas y definidas por el usuario, excepciones verificadas y no verificadas
  • Usar clases de excepciones que son parte de la clase Throwable
  • Explicar cómo anidar excepciones colocando una excepción dentro de otra
  • Aplicar try-catch para lanzar y capturar excepciones e identificar problemas antes de que ocurran
  • Agrupar excepciones para evitar escribir código para cada excepción individual

Puntos clave

  • Las excepciones son problemas que ocurren durante la ejecución de un programa y pueden manejarse antes de que el programa se aborte.
  • Las excepciones pueden ser integradas o definidas por el usuario y se dividen en tipos verificados y no verificados.
  • Agrupar excepciones permite evitar escribir código de manejo separado para cada excepción.
  • Lanzar y capturar excepciones permite identificar problemas antes de que ocurran.
  • Las clases de excepciones son parte de la clase Throwable y las excepciones pueden anidarse una dentro de otra.

Preguntas frecuentes

¿Qué cubre este curso de Excepciones de Java?

El curso cubre qué son las excepciones (problemas durante la ejecución del programa), cómo manejarlas antes de que el programa se aborte, los diferentes tipos de excepciones (integradas, definidas por el usuario, verificadas y no verificadas), cómo agruparlas, cómo lanzar y capturar excepciones, clases de excepciones como parte de la clase Throwable y cómo anidar excepciones.

¿Qué podré hacer al final del curso?

Podrá describir cómo usar excepciones, identificar los diferentes tipos de excepciones, usar clases de excepciones y explicar cómo anidar excepciones.

¿Qué temas se enseñan en las lecciones?

Las lecciones cubren Excepciones, Try Catch, Ciclo de Vida, Agrupación y Anidamiento.

¿Qué habilidades ayuda a desarrollar este curso?

Ayuda a desarrollar habilidades en Manejo de Excepciones, Java (Lenguaje de Programación), APIs de Java, Palabras Clave Java, Sintaxis Java y Gestión por Excepción.

¿Cuáles son los diferentes tipos de excepciones cubiertas?

El curso cubre excepciones integradas y definidas por el usuario, así como excepciones verificadas y no verificadas.

Transcripción

Transcripción

Y en la lección de hoy, vamos a aprender acerca de las excepciones. ¿Qué son las excepciones? Bueno, son eventos excepcionales. Es un evento que ocurre durante la ejecución de un programa. Y lo que hace es interrumpir el flujo normal de las instrucciones del programa. Y cuando este error ocurre dentro de un método, el método crea un objeto, y lo pasa al sistema de tiempo de ejecución. Ese objeto, que se llama objeto de excepción, contiene información sobre el error, incluyendo el tipo y el estado del programa cuando ocurrió el error. creando un objeto de excepción y manejándolo al sistema de tiempo de ejecución, se conoce como lanzar la excepción. En los viejos dias, el programa produciría un volcado del sistema de su memoria. Ahora, después de que un método lanza una excepción, el sistema de tiempo de ejecución intenta encontrar algo para manejarlo. El conjunto de cosas posibles para manejar la excepción, es la lista ordenada de métodos que han sido llamados, para obtener el método donde ocurrió el error. ¿Por qué usamos excepciones? Bueno, lo que queremos hacer es separar el código de manejo de errores del código normal. Las excepciones nos permiten separar los detalles de qué hacer cuando sucede algo fuera de lo común, y separamos eso de la lógica principal de un programa. Hace que nuestro código sea mucho más fácil de leer. Los tipos de excepciones incluyen, ¿qué sucede si el archivo estamos tratando de abrir, ¿no se puede abrir? ¿Qué sucede si no se puede determinar la longitud de un archivo? ¿Qué sucede si no hay suficiente memoria para asignar? ¿Qué sucede si una lectura falla? ¿Qué sucede si el archivo no se puede cerrar? Sin excepciones, tendríamos que mezclar el código de manejo de errores con el código que realmente funciona la lógica del programa. Entonces abrimos el archivo, si el archivo se abre, luego determinamos la longitud del archivo. Si la longitud del archivo es buena, entonces asignamos esa cantidad de memoria. Si tenemos suficiente memoria, entonces leemos el archivo. Como puede ver, hay mucha detección de errores dentro del código, que el código se vuelve largo, y difícil de seguir, con una serie de sentencias if anidadas. Cuando hay tantos errores al verificar dentro del código, perdemos la noción del flujo lógico del código, y hace que sea difícil de depurar, y entender exactamente lo que está haciendo el código. Podemos agrupar y diferenciar tipos de errores, y porque todas las excepciones lanzadas dentro de un programa son objetos, la agrupación se vuelve fácil, y es un resultado natural de la jerarquía de clases sobre la que Java se ha basado. Un método puede detectar una excepción en función de su grupo, o de tipo general, especificando alguna de las excepciones superclases en la instrucción catch. Y a continuación veremos la sentencia try catch. Pero los controladores de excepciones deben ser lo más específicos posible. Determinar el tipo de excepción, antes de decidir la mejor estrategia de recuperación. Al no detectar errores específicos, los manipuladores deben adaptarse a cualquier posibilidad. Y si tenemos controladores de excepciones que son demasiado generales, que puede hacer que el código sea más propenso a errores, capturando y manejando excepciones que no fueron previstos por el programador, y para eso no estaba destinado el manipulador. Una excepción es algún tipo de evento. Ocurre durante la ejecución del programa, y detiene el flujo normal del programa. Cuando ocurre el error, el método crea un objeto, y lo pasa al sistema de tiempo de ejecución. Hay muchas cosas que suceden detrás de escena, pero podemos manejar estas excepciones, y producir algún resultado que explique lo que sucede. Ahora, hay un montón de posibles excepciones diferentes, y podemos manejar cada uno de ellos, y lo que vamos a ver, es cómo manejar la excepción que sabemos que podría suceder. Las excepciones pueden separar los detalles de qué hacer cuando sucede algo fuera de lo común, y lo mantiene apartado de la lógica principal del programa. Y debido a que todas estas excepciones son objetos, podemos agruparlos o categorizarlos, para que tengan sentido. Cuando escribimos estas excepciones, Queremos ser lo más específicos posible. Y echemos un vistazo exactamente de lo que estoy hablando. Me desplazaré hacia abajo y aquí está nuestro programa. Es un programa simple, creo un entero, llamado dividir por cero, y lo puse igual a cero. Luego tengo un bloque try catch, comenzando en la línea 45. La idea aquí es que antes de dividir por cero, va a probar para ver si la división funcionará. Si hay una excepción aritmética, imprimirá la excepción aritmética, y un mensaje de lo que estaba tratando de hacer. Y luego un último bloque que dice: esto va a pasar pase lo que pase. Ejecutemos este programa y veamos qué sucede. Ahora la primera vez que lo ejecuto, lo tengo funcionando perfectamente, porque mi división por cero es cinco dividido por uno. Lo que pasa es que si cambio el uno por cero, y trato de dividir por cero, esta es la línea de código eso va a generar la excepción. El programa va a intentar hacer la división. Cuando ocurre la excepción, atrapa esa excepción aritmética, y luego imprime el mensaje. Ejecutémoslo y veamos qué sucede. Intentamos dividir por cero, cinco dividido por cero. El programa detectó nuestro error y dijo: la excepción aritmética por cero es el problema. Y finalmente, el bloque de código siempre se ejecuta, y la variable dividir por cero no se modificó. Lo que es importante saber aquí, es que el programa se completó con éxito, y la impresión es lo que necesita ser revisado para ver qué podría haber salido mal. Ahora ya sabe cómo se pueden manejar las excepciones antes de que causen un problema en su programa.

Aprende sobre la marcha

Lleva tu aprendizaje a todas partes: la app de KnowledgeCity te permite ver las lecciones sobre la marcha.