Forskjellen mellom overbelastning og overstyring i Java

Innholdsfortegnelse:

Forskjellen mellom overbelastning og overstyring i Java
Forskjellen mellom overbelastning og overstyring i Java

Video: Forskjellen mellom overbelastning og overstyring i Java

Video: Forskjellen mellom overbelastning og overstyring i Java
Video: Video 559 Forskjellen mellom / forskjell på 2024, Juli
Anonim

Nøkkelforskjell – Overbelastning vs overstyring i Java

Objektorientert programmering (OOP) er et viktig paradigme innen programvareutvikling. Det er en metodikk for å designe et program ved hjelp av klasser og objekter. En klasse er en blåkopi. Den beskriver hva som skal inneholde i objektet. Den definerer egenskapene eller attributtene og metodene som objektet skal bestå av. Derfor er et objekt en forekomst av en klasse. Disse objektene kommuniserer med andre objekter. Et hovedbegrep for OOP er polymorfisme. Det er evnen for et objekt til å oppføre seg på flere måter. Polymorfisme er kategorisert i to seksjoner som er overbelastning og overordnet. Denne artikkelen diskuterer forskjellen mellom disse to i Java. Hovedforskjellen mellom overbelastning og overstyring i Java er at overbelastning er muligheten til å lage flere metoder med samme navn med forskjellige implementeringer, og overstyring er å gi en implementering for en underklassemetode som allerede eksisterer i superklassen.

Hva er overbelastning i Java?

Overbelastning er muligheten til å lage flere metoder med samme navn med forskjellige implementeringer. Se Java-koden nedenfor.

Forskjellen mellom overbelastning og overstyring i Java
Forskjellen mellom overbelastning og overstyring i Java
Forskjellen mellom overbelastning og overstyring i Java
Forskjellen mellom overbelastning og overstyring i Java

Figur 01: Java-program som forklarer Overbelastning med forskjellig antall argumenter

I følge programmet ovenfor inneholder klasse A to metoder med samme navn. Den første summetoden har to parametere. Den andre summetoden har tre parametere. Når du oppretter et objekt av type A og kaller sum(2, 3), vil det kalle summetoden med to parametere som er sum(int a, int b) og returnerer 5. Når du oppretter et objekt av type A og kaller sum(2), 3, 4), vil den kalle den andre summetoden med tre parametere som er sum(int a, int b, int c) og returnerer 9.

Metodenavnet er det samme, men antall parametere er forskjellige. Det kan observeres at det samme objektet oppfører seg annerledes. Dette konseptet er kjent som overbelastning. Det omtales også som statisk binding eller kompilerer tidspolymorfisme.

Det kan også være overbelastet med forskjellige datatyper. Se Java-koden nedenfor.

Forskjellen mellom overbelastning og overstyring i Java_Figure 02
Forskjellen mellom overbelastning og overstyring i Java_Figure 02
Forskjellen mellom overbelastning og overstyring i Java_Figure 02
Forskjellen mellom overbelastning og overstyring i Java_Figure 02

Figur 02: Java-program som forklarer overbelastning med forskjellig antall argumenter

I følge programmet ovenfor består klasse A av to metoder med samme navn. Sum(int a, int b)-metoden mottar to heltallsverdier. Summen (dobbel a dobbel b) mottar to doble verdier. Når du oppretter objektet av type A og kaller sum(2, 3), vil det kalle sum(int a, int b) og returnere verdien 5. Når det kalles sum(3.4, 5.6), vil det kalle sum(dobbel a dobbel) b) og returner verdien 9,0. I dette eksemplet har metodene samme navn, men en annen type variabler. Dette er også overbelastende.

Hva er overstyring i Java?

I Java er det mulig å bygge underklasser med allerede eksisterende klasser. I stedet for å lage den nye klassen fra begynnelsen, er det mulig å bruke egenskapene og metodene til den allerede eksisterende klassen. Den eksisterende klassen er superklassen, og den avledede klassen er underklassen. Når underklassen gir en implementering for en metode, som allerede er i superklassen, er den kjent som overstyring. Se Java-programmet nedenfor.

Nøkkelforskjellen mellom overbelastning og overstyring i Java
Nøkkelforskjellen mellom overbelastning og overstyring i Java
Nøkkelforskjellen mellom overbelastning og overstyring i Java
Nøkkelforskjellen mellom overbelastning og overstyring i Java

Figur 03: Java-program for overstyring

I følge programmet ovenfor har klasse A en metodevisning(). Klasse B strekker seg fra klasse A, så egenskapene og metodene til klasse A er tilgjengelige for klasse B. Klasse B har metode display() med en spesifikk implementering. Når du oppretter et objekt av typen A og kaller visningsmetoden, vil det gi utdata B. Selv om klasse A har en visningsmetode, overstyres den fra klasse B visningsmetode. Underklassen implementerer en metode som allerede eksisterer i superklassen.

Dette konseptet er en type polymorfisme og kjent som overordnet. Det kalles også som Late Binding, Dynamic Binding, Runtime Polymorphism.

Hva er likhetene mellom overbelastning og overstyring i Java?

  • Begge er typer polymorfisme.
  • Ved overbelastning og overstyring har metoder samme navn.

Hva er forskjellen mellom overbelastning og overstyring i Java?

Overbelastning kontra overstyring i Java

Overbelastning i Java er muligheten til å lage flere metoder med samme navn med forskjellige implementeringer. Overstyring i Java gir en spesifikk implementering i underklassemetode for en metode som allerede eksisterer i superklassen.
Parametere
Ved overbelastning har metodene samme navn, men et annet antall parametere eller en annen type parametere. Ved overstyring har metodene samme navn og parametere må være de samme.
Themes
Overbelastning forekommer i klassen. Overstyring skjer innenfor de to klassene som har et arveforhold.
Synonymer
Overbelastning kalles kompilert tidspolymorfisme. Overstyring kalles kjøretidspolymorfisme.

Sammendrag – Overbelastning kontra overstyring i Java

Polymorfisme er et hovedbegrep innen objektorientert programmering. Det gir muligheten for et objekt til å oppføre seg på flere måter. Dette kan være enten overbelastning eller overstyring. Overbelastning er kompileringstidspolymorfismen, og overstyring er kjøretidspolymorfismen. De er nyttige i utvikling av programvareapplikasjoner. Forskjellen mellom overstyring og overbelastning er at overbelastning er muligheten til å lage flere metoder med samme navn med forskjellige implementeringer, og overstyring gir en spesifikk implementering i underklassemetode for en metode som allerede eksisterer i superklassen. Det er mulig å implementere både overbelastning og overstyring i Java.

Last ned PDF-overbelastning vs overstyring i Java

Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til offline-formål i henhold til sitat. Last ned PDF-versjon her Forskjellen mellom overbelastning og overstyring i Java

Anbefalt: