переопределение статического метода и конечного метода

Я знаю в Java , static метод не может быть переопределен подclassом.

Два вопроса:

1. Почему? Может ли кто-нибудь объяснить мне причину внутри?

2. Может ли подclass перекрывать final метод в суперclassе?

Статические методы не вызываются в конкретном экземпляре, поэтому их нельзя назвать полиморфно. Они вызываются самим типом – ничего о привязке не зависит от любой информации, доступной только во время выполнения. Пункт о полиморфных вызовах заключается в том, что реализация метода, которая в конечном итоге выполняется, зависит от типа выполнения цели вызова; нет цели для вызовов статических методов, как таковых.

Нет, подclassы не могут переопределять конечные методы – вся цель создания метода final заключается в том, чтобы предотвратить его переопределение.