Na atividade "Para saber mais: hierarquia de exceptions no Java" da aula "3 - Lidando com exceções" do curso "Java: consumindo API, gravando arquivos e lidando com erros", no seu final tem a seguinte frase:
"Ao lidar com exceções em um bloco try-catch, é importante considerar a hierarquia de exceções. É possível capturar exceções de uma classe mãe em um bloco catch que captura exceções de uma classe filha. No entanto, o inverso não é possível. Isso significa que, se um bloco catch captura exceções de uma classe filha, ele não será capaz de capturar exceções de uma classe pai."
Em ambas as afirmações esta sendo citado um bloco catch que captura exceções de uma classe filha (subclasse) e que desta é possível capturar exceções de uma classe mãe mas não de uma classe pai.
Qual a diferença da classe mãe e da classe pai? Elas não são só nomenclaturas para a superclasse?
Aparentemente a afirmação é contraditória, pois parece sugerir resultados diferentes para a mesma ação.
A final, o bloco catch que captura exceções de uma classe filha pode e não pode pegar exceções de quem e porquê?