Razlika med preobremenitvijo in preglasitvijo v Javi

Kazalo:

Razlika med preobremenitvijo in preglasitvijo v Javi
Razlika med preobremenitvijo in preglasitvijo v Javi

Video: Razlika med preobremenitvijo in preglasitvijo v Javi

Video: Razlika med preobremenitvijo in preglasitvijo v Javi
Video: ВКУСНЕЙШИЙ ПП шоколад на КОКОСОВОМ масле БЕЗ САХАРА! ПРОСТОЙ РЕЦЕПТ! 2024, November
Anonim

Ključna razlika – preobremenitev proti preglasitvi v Javi

Objektno usmerjeno programiranje (OOP) je glavna paradigma v razvoju programske opreme. Je metodologija za načrtovanje programa z uporabo razredov in objektov. Razred je načrt. Opisuje, kaj naj vsebuje predmet. Določa lastnosti ali atribute in metode, ki naj bi jih sestavljal predmet. Zato je predmet primerek razreda. Ti predmeti komunicirajo z drugimi predmeti. Eden glavnih konceptov OOP je polimorfizem. Je sposobnost predmeta, da se obnaša na več načinov. Polimorfizem je kategoriziran v dva dela, ki sta preobremenitveni in prevladujoči. Ta članek obravnava razliko med tema dvema v Javi. Ključna razlika med preobremenitvijo in preglasitvijo v Javi je v tem, da je preobremenitev zmožnost ustvarjanja več metod z istim imenom z različnimi izvedbami, preglasitev pa je zagotavljanje izvedbe za metodo podrazreda, ki že obstaja v nadrazredu.

Kaj je preobremenitev v Javi?

Preobremenitev je zmožnost ustvarjanja več metod z istim imenom z različnimi implementacijami. Glejte spodnjo kodo Java.

Razlika med preobremenitvijo in preglasitvijo v Javi
Razlika med preobremenitvijo in preglasitvijo v Javi
Razlika med preobremenitvijo in preglasitvijo v Javi
Razlika med preobremenitvijo in preglasitvijo v Javi

Slika 01: Java program, ki pojasnjuje preobremenitev z različnim številom argumentov

Glede na zgornji program vsebuje razred A dve metodi z istim imenom. Prva metoda vsote ima dva parametra. Druga metoda vsote ima tri parametre. Pri ustvarjanju predmeta tipa A in klicu sum(2, 3) bo poklical metodo sum z dvema parametroma, ki sta sum(int a, int b) in vrne 5. Ko ustvarja objekt tipa A in kliče sum(2, 3, 4), bo poklical drugo metodo vsote s tremi parametri, ki je vsota (int a, int b, int c) in vrne 9.

Ime metode je enako, vendar je število parametrov različno. Opazimo lahko, da se isti predmet obnaša različno. Ta koncept je znan kot preobremenitev. Imenuje se tudi statično vezanje ali časovni polimorfizem prevajanja.

Lahko je tudi preobremenjen z različnimi vrstami podatkov. Glejte spodnjo kodo Java.

Razlika med preobremenitvijo in preglasitvijo v Javi_Slika 02
Razlika med preobremenitvijo in preglasitvijo v Javi_Slika 02
Razlika med preobremenitvijo in preglasitvijo v Javi_Slika 02
Razlika med preobremenitvijo in preglasitvijo v Javi_Slika 02

Slika 02: Program Java, ki pojasnjuje preobremenitev z različnim številom argumentov

Glede na zgornji program je razred A sestavljen iz dveh metod z istim imenom. Metoda sum(int a, int b) prejme dve celoštevilski vrednosti. Vsota (double a double b) prejme dve dvojni vrednosti. Ko ustvarite objekt tipa A in pokličete sum(2, 3), bo poklical sum(int a, int b) in vrnil vrednost 5. Pri klicu sum(3.4, 5.6) bo poklical sum(double a double b) in vrne vrednost 9,0. V tem primeru imata metodi isto ime, vendar različno vrsto spremenljivk. Tudi to je preobremenitev.

Kaj je preglasitev v Javi?

V Javi je mogoče zgraditi podrazrede z že obstoječimi razredi. Namesto ustvarjanja novega razreda od začetka je mogoče uporabiti lastnosti in metode že obstoječega razreda. Obstoječi razred je nadrazred, izpeljani razred pa je podrazred. Ko podrazred zagotavlja izvedbo za metodo, ki je že v nadrazredu, je to znano kot preglasitev. Glejte spodnji program Java.

Ključna razlika med preobremenitvijo in preglasitvijo v Javi
Ključna razlika med preobremenitvijo in preglasitvijo v Javi
Ključna razlika med preobremenitvijo in preglasitvijo v Javi
Ključna razlika med preobremenitvijo in preglasitvijo v Javi

Slika 03: Java program za preglasitev

V skladu z zgornjim programom ima razred A metodo display(). Razred B se razširja iz razreda A, zato so lastnosti in metode razreda A dostopne razredu B. Razred B ima metodo display() s posebno izvedbo. Ko ustvarite objekt tipa A in pokličete metodo prikaza, bo dal izhod B. Čeprav ima razred A metodo prikaza, je ta preglasena z metodo prikaza razreda B. Podrazred implementira metodo, ki že obstaja v nadrazredu.

Ta koncept je vrsta polimorfizma in je znan kot preglasitev. Imenuje se tudi pozna vezava, dinamična vezava, izvajalni polimorfizem.

Kakšne so podobnosti med preobremenitvijo in preglasitvijo v Javi?

  • Obe sta vrsti polimorfizma.
  • Pri preobremenitvi in preglasitvi imajo metode isto ime.

Kakšna je razlika med preobremenitvijo in preglasitvijo v Javi?

Preobremenitev proti preglasitvi v Javi

Preobremenitev v Javi je zmožnost ustvarjanja več metod z istim imenom z različnimi izvedbami. Preglasitev v Javi zagotavlja posebno izvedbo v metodi podrazreda za metodo, ki že obstaja v nadrazredu.
Parametri
Pri preobremenitvi imajo metode isto ime, vendar različno število parametrov ali drugačno vrsto parametrov. Pri preglasitvi imajo metode enako ime in parametri morajo biti enaki.
Teme
Prihaja do preobremenitve znotraj razreda. Preglasitev se zgodi znotraj dveh razredov, ki imata nasledstveno razmerje.
Sinonimi
Preobremenitev se imenuje polimorfizem prevedenega časa. Preglasitev se imenuje polimorfizem izvajalnega časa.

Povzetek – Preobremenitev proti preglasitvi v Javi

Polimorfizem je glavni koncept v objektno usmerjenem programiranju. Predmetu omogoča, da se obnaša na več načinov. To je lahko preobremenitev ali preglasitev. Preobremenitev je polimorfizem v času prevajanja, preglasitev pa je polimorfizem v času izvajanja. Uporabni so pri razvoju programske opreme. Razlika med preglasitvijo in preobremenitvijo je v tem, da je preobremenitev zmožnost ustvarjanja več metod z istim imenom z različnimi izvedbami, preglasitev pa zagotavlja specifično izvedbo v metodi podrazreda za metodo, ki že obstaja v nadrazredu. V Javi je mogoče implementirati tako preobremenitev kot preglasitev.

Prenesite PDF Preobremenitev proti preglasitvi v Javi

Lahko prenesete PDF različico tega članka in jo uporabite za namene brez povezave v skladu z opombo o citiranju. Prenesite različico PDF tukaj. Razlika med preobremenitvijo in preglasitvijo v Javi

Priporočena: