1
respuesta

[Duda] NullPointerException

El profesor en este modulo luego de explicar como lanzar una exception, dice que en try/catch podemos tratar y atrapar excepciones, y que en el argumento del catch se pueden escribir el numero de excepciones que se esten considerando, entonces el hace algo asi:

try{ metodo1(); }catch(MiException| ArithmeticException | NullPointerException){ }

pero después dice que: "en el caso del NullPointerException, no puede ser lanzado. Yo no puedo hacer catch de él porque no extiende directamente de Throwable".

Mi duda es: porque NullPointerException no puede ser lanzado porque no extiende directamente de Throwable y porque ArithmeticException si?, si ArithmeticException tampoco extiende directamente de Throwable.

Gracias

1 respuesta

Hola Marta, ¡espero que estés bien!

La afirmación de que NullPointerException no puede ser lanzada porque no extiende directamente de Throwable es incorrecta.

En Java, NullPointerException es una subclase directa de RuntimeException, que, a su vez, es una subclase de Exception. Y tanto Exception como RuntimeException son subclases de Throwable.

Por lo tanto, NullPointerException puede ser lanzada y capturada como cualquier otra excepción en Java. Puedes utilizar un bloque try-catch para capturar y manejar una NullPointerException o declarar que el método actual la lanza utilizando la palabra clave throws.

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

¡Vamos juntos!

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