Скрытие методов в Java

Опубликовано: 7 Января, 2023

Предварительное условие : переопределение в Java

Если подкласс определяет статический метод с той же сигнатурой, что и статический метод в суперклассе, то метод в подклассе скрывает метод в суперклассе. Этот механизм возникает из-за того, что статический метод разрешается во время компиляции . Статический метод привязывается во время компиляции, используя тип ссылки, а не тип объекта .

Примеры

Программа демонстрирует разницу между переопределением метода и сокрытием метода в Java:

Разница между переопределением метода и сокрытием метода в Java

  • В переопределении метода как родительский класс метода, так и дочерний класс не являются статическими.
  • В методе Hiding как родительский класс метода, так и дочерний класс являются статическими.
  • В методе Переопределение разрешения метода на основе ссылочного типа.
  • В методе скрытие метода разрешение на основе типа объекта.
  • Версия переопределенного метода экземпляра, которая вызывается, — это версия подкласса.
  • Версия скрытого статического метода, который вызывается, зависит от того, вызывается ли он из суперкласса или подкласса.