Что такое переопределение метода в Java

Cto Takoe Pereopredelenie Metoda V Java



При обновлении данных в Java может потребоваться переопределить некоторые определенные функции, сохранив код нетронутым. Например, добавление некоторых новых функций в переопределенную функцию, чтобы остались прежние функции. В таких ситуациях « переопределение метода » в Java творит чудеса, время от времени обновляя накопленные функции на стороне разработчика.

В этой статье подробно рассказывается об использовании и реализации переопределения методов в Java.

Что такое «переопределение метода» в Java?

Если дочерний класс содержит метод, аналогичный указанному в его родительском классе, он называется « переопределение метода на Яве. При этом вступают в силу функциональные возможности дочернего класса, то есть переопределенный метод.







Рекомендации по «переопределению метода» в Java

  • Метод должен содержать то же имя, что и в его родительском классе.
  • Метод должен иметь такой же параметр, как и в его родительском классе.
  • Метод, выделенный как « окончательный ” не может быть переопределено.

Пример 1: переопределение метода в Java

В этом примере методология переопределения метода, т. е. « функция ” может осуществляться через наследование:



сорт Родитель {

общественный пустота шоуаут ( ) {

Система . вне . печать ( 'Это линуксинт!' ) ;

} }

сорт Ребенок расширяет Родитель {

публичный пустота шоуаут ( ) {

Система . вне . печать ( 'Это Ява!' ) ;

} }

публичный сорт Пример {

публичный статический пустота основной ( Нить [ ] аргументы ) {

Дочерний объект '=' новый Ребенок ( ) ;

объект шоуаут ( ) ;

} }

В приведенной выше демонстрации выполните следующие шаги:



  • Во-первых, создайте родительский (супер) класс с именем « Родитель ».
  • В этом классе определите функцию с именем « шоуаут() ” и отобразить данное сообщение в его (функции) определении.
  • После этого создайте дочерний (под) класс с именем « Ребенок ” унаследовав “ Родитель ” класс через “ расширяет ключевое слово.
  • В этом классе переопределите функцию, определенную в его родительском классе, определив ее с идентичным именем « шоуаут() ” и вывести указанное сообщение.
  • В основном создайте объект дочернего класса через « новый ключевое слово ' и ' Ребенок() 'Конструктор.
  • Наконец, вызовите функцию « шоуаут() », ссылаясь на созданный объект. Это вызовет переопределенную функцию вместо функции по умолчанию в родительском классе.

Выход





В приведенном выше выводе можно проанализировать, что последняя функция, т. Е. Переопределенная, вступает в силу.



Пример 2: Использование ключевого слова «супер» в переопределении метода с использованием Java

В данном конкретном примере « супер ” можно связать, чтобы вызвать функциональные возможности как метода по умолчанию, т. е. родительского, так и переопределенного метода:

сорт Родитель {

общественный пустота шоуаут ( ) {

Система . вне . печать ( 'Это линуксинт!' ) ;

} }

сорт Ребенок расширяет Родитель {

публичный пустота шоуаут ( ) {

супер . шоуаут ( ) ;

Система . вне . печать ( 'Это Ява!' ) ;

} }

публичный сорт Пример {

публичный статический пустота основной ( Нить [ ] аргументы ) {

Дочерний объект '=' новый Ребенок ( ) ;

объект шоуаут ( ) ;

} }

В приведенном выше блоке кода:

  • Аналогичным образом создайте родительский класс с именем « Родитель ” и накапливаем функцию “ шоуаут() ” в нем, отображая предоставленное сообщение.
  • На следующем шаге создайте дочерний класс с именем « Ребенок » наследуя родительский класс.
  • Аналогичным образом внутри этого класса переопределяется идентичная функция. Кроме того, свяжите « супер ключевое слово с функцией для вызова функции по умолчанию, то есть функций родительского класса.
  • Наконец, создайте объект дочернего класса и вызовите переопределенную функцию.
  • Алгоритм: Выполнение будет выполнено таким образом, что при вызове переопределенной функции и « супер ключевое слово будет ссылаться на функцию родительского класса. Это приведет к одновременной регистрации функций родительского и дочернего классов на консоли.

Выход

Приведенный выше вывод означает, что эффект переопределенной функции также можно отменить с помощью кнопки « супер ключевое слово.

Пример 3: переопределение «финального» метода в Java

В этом примере функция может быть выделена как « окончательный ” в родительском классе, а затем анализируется путем доступа к нему в его дочернем классе:

сорт Родитель {

окончательный общественный пустота шоуаут ( ) {

Система . вне . печать ( 'Это линуксинт!' ) ;

} }

сорт Ребенок расширяет Родитель {

публичный пустота шоуаут ( ) {

Система . вне . печать ( 'Это Ява!' ) ;

} }

общественный сорт Пример {

общественный статический пустота основной ( Нить [ ] аргументы ) {

Дочерний объект '=' новый Ребенок ( ) ;

объект шоуаут ( ) ;

} }

В соответствии с приведенным выше кодом выполните следующие шаги:

  • Создайте родительский класс ' Родитель ».
  • Внутри этого класса выделите функцию « шоуаут() ' как ' окончательный ', на что указывает предыдущее ключевое слово.
  • Теперь наследуйте дочерний класс ' Ребенок » из бывшего обсуждаемого класса. Здесь переопределите выделенный « окончательный ” в родительском классе.
  • В основном, создайте объект « Ребенок ” и вызовите переопределенную функцию.

Выход

Выполнение приведенного выше кода зарегистрирует отображаемую ошибку, поскольку « окончательный ” нельзя переопределить.

Заключение

Если дочерний класс содержит метод, аналогичный указанному в его родительском классе, это соответствует переопределению метода в Java. Этот подход переопределяет предыдущие методы и реализует последние. Переопределение может быть обслужено через « супер ' или ' окончательный ” ключевые слова по-разному. В этом блоге обсуждалась концепция переопределения методов в Java.