Introduksjon til Overriding i Java

  • Java har vært et veldig kjent allmennspråk som er objektorientert, klassebasert i naturen sammen med primitive datatyper som også er kjent for å inneholde få implementeringsrelaterte avhengigheter som gjør bruken av applikasjonsutviklerne veldig enkelt, da det gir dem en enkel skriving en gang og les hvor som helst. Før du hopper på begrepet overstyring i detalj, bør man være grundig med konseptet foreldreklasse så vel som barneklasse.
  • Foreldreklassen er superklassen, dvs. klassen som bor på toppen og har et unikt sett med individuelle egenskaper og enheter, mens barneklassen eller baseklassen er den som er til stede i den nedre enden av foreldreklassen og har en annen men likner sett med funksjoner. Overstyring i Java utvider seg også til å få funksjonene i foreldreklassen ved et IS-A-forhold og blir derfor betegnet som en arv.
  • En slik funksjon ved dette programmeringsspråket er Overriding-funksjonen, i henhold til hvilken i hvilket som helst objektorientert programmeringsspråk, overstyring blir en funksjon som benytter seg av en underklasse eller en barneklasse for å gi en spesiell implementering av et programs metode som allerede er på plass av en av foreldreklassene eller superklassene. Hvis underklasse-metoden har samme navn, samme signatur eller parameter og lignende returtype eller en undertype som brukes som metode i superklassen, overstyrer underklassemetoden superklasse-metoden.
  • Med andre ord, hvis en barneklasse eller en baseklasse eller en underklasse får samme metodenavn som er av overordnet metode, så er det kjent som metodeoverskridende i Java. Eller for å si det bedre hvis en underklasse har gitt metodeimplementeringer som allerede er erklært av noen av foreldreklassene, kan det også være kjent å være metodeoverskridende i Java.

De viktigste bruksområdene ved å overstyre Java-metoden er:

  1. Den brukes til å tilveiebringe en spesiell implementering av en metode som allerede er levert av den tilsvarende superklassen.
  2. Begrepet metodeoverskridelse strekker seg også til polymorfisme av kjøretid.

Hvordan virker overstyring i Java?

Når det gjelder metodeoverskridelse når en hvilken som helst metode i underklassen har samme navn som den overordnede metoden, og samtalen fra kjøretiden genereres slik at den peker på metodenavnet som er felles for begge, og en av dem utfører er når metodeoverstyring sies å eksistere. Hovedutfordringen mens du gjør dette er når det samme metodenavnet brukes både for foreldre- og barneklasser, og ved kjøretid blir samtalen gitt på en slik måte at den må tilsvare enten barneklassen eller foreldreklassen. Kompilatoren av språket bestemmer så dette ved å ta hensyn til antall parametere, parametertyper osv. Basert på hvilken funksjonsnavn som skal kalles bestemmes. Overbelastning av metoder og overstyring av metoder har vært et av de viktigste konseptene innen kjernen java, og det har betydning ettersom kompilatoren må være klar over hvilken metode som faktisk skal ringe.

Eksempler på overstyring i Java

Hver gang et funksjonsnavn har samme navn som navnet på foreldreklassenavnet, kan denne funksjonen sies å eksistere spesielt ved kjøretidsmekanisme. Her er et enkelt eksempel for å forklare dette konseptet i detalj. For det første vil vi diskutere problemet uten å overstyre, og deretter hvorfor det ble til.4.

Første eksempel:

class MyVehicle(
void run()(
System.out.println("It's a running vehicle");)
)
class MyCar extends MyVehicle(
public static void main(String args())(
MyCar obj = new MyCar();
obj.run();
)
)

Produksjon:

Utgangen er: Det er et kjøretøy. Nå måtte jeg gi en spesifikk implementering av metodekjøringen () som er gitt i underklassen, og derfor kunne vi benytte oss av metoden overstyrende funksjon i fremtiden.

Andre eksempel:

class MyVehicle(
void run()(System.out.println("My vehicle is running");)
) class MyCar2 extends MyVehicle(
void run()(System.out.println("My car is running");)
public static void main(String args())(
MyCar2 obj = new MyCar2();
obj.run();
)
)

Produksjon:

Min bil kjører er resultatet fra ovenstående problemeksempel.

Forklaring: Hvis du ser nøye på hva som skjedde i begge eksemplene, snakker det første eksemplet om å utvide barneklassen med foreldreklassen, noe som også er tilfelle i det andre tilfellet. Men i dette eksemplet utvider MyCar2 MyVehicle, og som definert av definisjonen av metoden som overstyrer beslutningen til samtalen, blir gjort ved kjøretid, dvs. på den tiden kjøres () -metoden ble kalt. Når denne metoden ble kalt, gikk samtalen først til barneklassen eller baseklassen, da den allerede utvidet alle egenskapene til foreldreklassen og derfor ville være fullt tilstrekkelig. Så når den nådde grunnleggende klasseseksjon og sørget for at arven er et IS-A-forhold sammen med nøkkelordet strekker seg, trykket det ut vellykket: Min bil kjører.

Regler for metodeoverskridelse i Java

  1. Navnet på metoden skal være det samme for både foreldre og barneklasse.
  2. Parameteren til baseklassen skal være den samme som for foreldreklassen.
  3. Forholdet må være et IS-A-forhold mellom barneklassen og foreldreklassen.

Konklusjon

Java har vært et veldig gammelt programmeringsspråk, og i dag brukes det nesten på alle teknologisfærer. Derfor må man være sterkt klar over typene og konseptene som brukes i dette robuste programmeringsspråket. Java-språket er vanligvis delt inn i to segmenter, dvs. Core Java og Advanced Java. Begrepet metodeoverstyring utgjør en del av Core Java der det benytter seg av funksjonene i objektorienterte programmeringsteknikker som Arv. Dette er et veldig viktig tema som du absolutt bør forstå i detalj hvis du ønsker å jobbe på dette språket. Håper du likte artikkelen vår. Bli hos oss for flere artikler som disse.

Anbefalte artikler

Dette er en guide til å overstyre i Java. Her diskuterer vi Introduksjon til Overriding i Java, Typer Overriding i Java og Metoderegler overstyring i Java. Du kan også gå gjennom de andre foreslåtte artiklene våre for å lære mer–

  1. JavaScript-objekter
  2. Arrays-metoder i JavaScript
  3. Java-merknader
  4. Overstyring i OOP
  5. Python-overbelastning