Шта је замењивање метода у Јави

Sta Je Zamenivane Metoda U Javi



Приликом ажурирања података у Јави, може постојати захтев да се заобиђу неке специфичне функционалности како би код остао нетакнут. На пример, додавање неких нових функционалности у замењену функцију тако да преостале карактеристике остану. У таквим ситуацијама, „ превладавање метода ” у Јави чини чуда у ажурирању акумулираних функција с времена на време на крају програмера.

Овај чланак ће елаборирати употребу и имплементацију замене метода у Јави.

Шта је „Пренаглашавање метода“ у Јави?

Ако подређена класа садржи сличан метод као што је наведено у својој родитељској класи, назива се „ превладавање метода ” на Јави. На тај начин ступају на снагу функционалности подређене класе, односно надјачаног метода.







Разматрања у вези са „Замена метода“ у Јави

  • Метода мора да садржи идентично име као у својој родитељској класи.
  • Метода треба да има идентичан параметар као у својој родитељској класи.
  • Метода додељена као „ коначни ” се не може заменити.

Пример 1: Замена метода у Јави

У овом примеру, методологија надјачавања методе, тј. функција ” може се извршити путем наслеђивања:



класа Родитељ {

јавности празнина испратити ( ) {

Систем . оут . принтлн ( 'Ово је Линукхинт!' ) ;

} }

класа дете протеже Родитељ {

јавности празнина испратити ( ) {

Систем . оут . принтлн ( 'Ово је Јава!' ) ;

} }

јавности класа Пример {

јавности статична празнина главни ( Низ [ ] аргс ) {

Цхилд обј = Нова дете ( ) ;

обј. испратити ( ) ;

} }

У горњој демонстрацији, примените следеће кораке:



  • Прво, креирајте родитељску (супер) класу под називом „ Родитељ ”.
  • Унутар ове класе дефинишите функцију под називом „ испратити() ” и прикажите дату поруку у њеној (функцијској) дефиницији.
  • Након тога, креирајте дете (под) класу под називом „ дете ” наследивши „ Родитељ ” класе преко „ протеже ” кључна реч.
  • У овој класи, надјачајте функцију дефинисану у оквиру родитељске класе тако што ћете је дефинисати идентичним именом “ испратити() ” и прикажите наведену поруку.
  • У главном, креирајте објекат подређене класе преко „ Нова ” кључна реч и „ дете() ” конструктор.
  • На крају, позовите функцију “ испратити() ” упућивањем на креирани објекат. Ово ће позвати замењену функцију уместо подразумеване у родитељској класи.

Излаз





У горњем излазу може се анализирати да потоња функција, тј. заобиђена, ступа на снагу.



Пример 2: Коришћење „супер“ кључне речи у заобилажењу метода коришћењем Јаве

У овом конкретном примеру, „ супер ” кључна реч може да се повеже да би се позвале функционалности подразумеваног, тј. родитељског и замењеног метода:

класа Родитељ {

јавности празнина испратити ( ) {

Систем . оут . принтлн ( 'Ово је Линукхинт!' ) ;

} }

класа дете протеже Родитељ {

јавности празнина испратити ( ) {

супер . испратити ( ) ;

Систем . оут . принтлн ( 'Ово је Јава!' ) ;

} }

јавности класа Пример {

јавности статична празнина главни ( Низ [ ] аргс ) {

Цхилд обј = Нова дете ( ) ;

обј. испратити ( ) ;

} }

У горњем блоку кода:

  • Слично, креирајте родитељску класу под називом „ Родитељ ” и акумулирати функцију “ испратити() ” у њему, приказујући дату поруку.
  • У следећем кораку креирајте дечију класу под називом „ дете ” наслеђујући родитељску класу.
  • Унутар ове класе, на сличан начин, надјачајте идентичну функцију. Такође, удружите „ супер ” кључна реч са функцијом за позивање подразумеваних, тј. функционалности функције родитељске класе.
  • На крају, креирајте објекат подређене класе и позовите замењену функцију.
  • алгоритам: Извршење ће се обавити на такав начин да када се позове надјачана функција, а „ супер ” кључна реч ће се односити на функцију родитељске класе. Ово ће резултирати евидентирањем функционалности и родитељске и подређене класе истовремено на конзоли.

Излаз

Горњи излаз означава да се ефекат пренаглашене функције такође може поништити преко „ супер ” кључна реч.

Пример 3: Заобилажење „коначног“ метода у Јави

У овом примеру, функција се може доделити као „ коначни ” у родитељској класи и касније анализиран приступом у њеној подређеној класи:

класа Родитељ {

коначни јавности празнина испратити ( ) {

Систем . оут . принтлн ( 'Ово је Линукхинт!' ) ;

} }

класа дете протеже Родитељ {

јавности празнина испратити ( ) {

Систем . оут . принтлн ( 'Ово је Јава!' ) ;

} }

јавности класа Пример {

јавности статична празнина главни ( Низ [ ] аргс ) {

Цхилд обј = Нова дете ( ) ;

обј. испратити ( ) ;

} }

У складу са горе наведеним кодом, примените доле наведене кораке:

  • Креирајте родитељску класу “ Родитељ ”.
  • Унутар ове класе доделите функцију „ испратити() ' као ' коначни “, као што је назначено претходном кључном речи.
  • Сада наследите дечју класу “ дете ” из претходног разматраног часа. Овде замените додељени „ коначни ” функција у родитељској класи.
  • Углавном, креирајте објекат од „ дете ” класе и позовите пренаглашену функцију.

Излаз

Извршавање горњег кода ће евидентирати приказану грешку од „ коначни ” метод се не може заменити.

Закључак

Ако подређена класа садржи сличан метод као што је наведено у својој надређеној класи, то одговара прегласавању методе у Јави. Овај приступ превазилази претходне методе и примењује друге. Надјачавање се може обавити преко „ супер ' или ' коначни ” кључне речи на различите начине. Овај блог је расправљао о концепту надјачавања метода у Јави.