When hiding a static field, there are no restrictions on the level of access to this field in the subclass; it can even be non-stationary and another type of data.
On the other hand, when hiding a static method, a static method from a subclass that hides the static method from the superclass can provide access, but no less than a hidden method.
AFAIK, static method binding is anyway done at compile time, so why is there such a limitation?
PS The question is only out of curiosity.
source share