As variáveis estáticas são herdadas

Eu li em milhares de locais que variáveis estáticas não são herdadas. Mas então como esse código funciona bem?

Parent.java

public class Parent {
        static String str = "Parent";
    }

Child.java

public class Child extends Parent {
        public static void main(String [] args)
        {
            System.out.println(Child.str);
        }
    }

Este código imprime "Pai".

Leia também em alguns locais o conceito de ocultação de dados.

Parent.java

public class Parent {
    static String str = "Parent";
}

Child.java

public class Child extends Parent {
    static String str = "Child";

    public static void main(String [] args)
    {
        System.out.println(Child.str);
    }
}

Agora a saída é "Criança".

Então, isso significa quevariáveis estáticas são herdadas, mas seguem o conceito de ocultar dados?

questionAnswers(3)

yourAnswerToTheQuestion