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