Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Diferencia entre RuntimeException y Exception

Tengo la duda de porqué al ejecutar el programa que hicimos en éste ejercicio, el programa se detiene (no termina de ejecutar la pila) al lanzar la exception cuando se extiende de RuntimeException. En cambio, si extiende de Exception y se controla la misma con try-catch, el programa sigue ejecutando hasta terminar la pila de tareas.

1 respuesta
solución!

¡Hola Juan! Espero quevestés bien.

Sí, gracias por compartir con nosotros. RuntimeException es una subclase de Exception y cuando una excepción se extiende de RuntimeException, se considera una excepción no comprobada (unchecked exception) y no es necesario que se capture o se lance explícitamente. El programa puede continuar ejecutándose incluso si se produce esta excepción: si tienes un código que divide dos números y uno de ellos es cero, se lanzará una ArithmeticException (que es una subclase de RuntimeException). Sin embargo, si capturas esta excepción con un bloque try-catch, el programa seguirá ejecutándose sin problemas.

Por otro lado, cuando una excepción se extiende de Exception (pero no de RuntimeException), se considera una excepción comprobada (checked exception) y debe ser capturada o lanzada explícitamente. Esto significa que si no capturas o lanzas la excepción, el programa no se compilará. Por ejemplo, si tienes un método que realiza una operación de entrada y salida de archivos y no capturas o lanzas la excepción IOException, el programa no se compilará.

Mucho éxito en todo lo que te propongas y si tienes alguna duda aquí estaremos para apoyarte.

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios.