Razlika Med Polimorfizmom In Dedovanjem V OOP

Kazalo:

Razlika Med Polimorfizmom In Dedovanjem V OOP
Razlika Med Polimorfizmom In Dedovanjem V OOP

Video: Razlika Med Polimorfizmom In Dedovanjem V OOP

Video: Razlika Med Polimorfizmom In Dedovanjem V OOP
Video: FP против ООП | Для чайников 2024, November
Anonim

Ključna razlika - polimorfizem vs dedovanjem v OOP

Objektno usmerjeno programiranje (OOP) se običajno uporablja za razvoj programske opreme. Številni programski jeziki podpirajo objektno usmerjeno programiranje. Predmetno usmerjeno programiranje je metodologija za načrtovanje programa z uporabo razredov in predmetov. Predavanje v OOP je načrt za ustvarjanje predmeta. Razred ima lastnosti in metode. Predmet je primerek razreda. OOP vsebuje štiri stebre, kot so dedovanje, polimorfizem, abstrakcija in kapsulacija. Ta članek obravnava razliko med polimorfizmom in dedovanjem v OOP. Ključna razlika med polimorfizmom in dedovanjem v OOP je ta, da je polimorfizem sposobnost predmeta, da se vede na več načinov, in dedovanje je ustvariti nov razred z lastnostmi in metodami obstoječega razreda.

VSEBINA

1. Pregled in ključna razlika

2. Kaj je polimorfizem v OOP

3. Kaj je dedovanje v OOP

4. Podobnosti med polimorfizmom in dedovanjem v OOP

5. Vzporedna primerjava - Polimorfizem in dedovanje v OOP v tabelarni obliki

6. Povzetek

Kaj je polimorfizem v OOP?

Polimorfizem pomeni več oblik. En predmet ima lahko več vedenj. Polimorfizem lahko razdelimo v dve kategoriji. Preobremenjujejo in prevladajo.

Preobremenitev

Oglejte si spodnji program, napisan v Javi.

Razlika med polimorfizmom in dedovanjem v OOP
Razlika med polimorfizmom in dedovanjem v OOP

Slika 01: Preobremenitev

V skladu z zgornjim programom se ustvari objekt tipa A. Med klicem obj.sum (); dal bo rezultat, povezan z metodo sum (). Pri klicanju obj.sum (2,3); dal bo rezultat, povezan s vsoto (int a, int b). Opazimo lahko, da ima isti predmet različno vedenje, odvisno od situacije. Če obstaja več metod z istim imenom, vendar z različnimi parametri, je to znano kot preobremenitev. Znan je tudi kot statični polimorfizem vezave ali prevajanja.

Preglasitev

Druga vrsta polimorfizma je prevladujoča. Oglejte si spodnji program, napisan v Javi.

Razlika med polimorfizmom in dedovanjem v OOP Slika 02
Razlika med polimorfizmom in dedovanjem v OOP Slika 02

Slika 02: Preglasitev

V skladu z zgornjim programom obstaja metoda display () v razredu A. Razred B se razteza od razreda A. Zato je do vseh metod v razredu A dostopen razred B. Je dedovanje. Koncept dedovanja je opisan kasneje.

Razred B ima tudi prikaz iste metode (). Ko ustvarite objekt vrste A in pokličete prikazno metodo, bo rezultat dal B. Metoda prikaza razreda A preglasi metoda prikaza razreda B. Torej, izhod je B.

Ko obstajajo metode z istim imenom in enakimi parametri, vendar v dveh različnih razredih in so povezane z dedovanjem, je to znano kot preglasitev. Znan je tudi kot pozna vezava, dinamična vezava, polimorfizem med izvajanjem. Preobremenitev in razveljavitev se imenujejo polimorfizem. To je glavni koncept objektno usmerjenega programiranja.

Kaj je dedovanje v OOP?

Oglejte si spodnji program, napisan v Javi.

Ključna razlika med polimorfizmom in dedovanjem v OOP
Ključna razlika med polimorfizmom in dedovanjem v OOP

Slika 03: Primer dedovanja

V skladu z zgornjim programom ima razred A metodo sum (), razred B pa metodo sub ().

Metodo sum () razreda A lahko uporabimo v razredu B z uporabo ključne besede extension. Ponovna uporaba lastnosti in metod v obstoječem razredu za ustvarjanje novega razreda je znana kot dedovanje. Tudi v razredu B ni metode sum (); podedovan je iz razreda A. Dedovanje je koristno za večkratno uporabo kode. Starejši razred se imenuje osnovni razred, superrazred ali nadrejeni razred. Izpeljani razred se imenuje podrazred ali podrejeni razred.

Vrste dedovanja

Obstajajo različne vrste dedovanja. Gre za enostopenjsko dedovanje, večstopenjsko dedovanje, več dedovanje, hierarhično dedovanje in hibridno dedovanje.

Enkratno dedovanje

V Single Enheritance obstaja en super razred in en podrazred. Če je razred A super razred in razred B podrazred, je razred B dostopen do vseh lastnosti in metod razreda A. Obstaja samo ena raven; zato se imenuje kot enostopenjsko dedovanje.

Večstopenjsko dedovanje

Pri večstopenjskem dedovanju obstajajo tri stopnje razredov. Vmesni razred podeduje iz super razreda. Podrazred podeduje od vmesnega razreda. Če obstajajo trije razredi, kot so A, B in C in A je super razred, B pa vmesni razred. Potem B podeduje od A in C od B, je večnivojska dediščina.

Večkratno dedovanje

V Multiple Inheritance obstaja veliko super razredov in en podrazred. Če obstajajo trije super razredi, imenovani A, B, C in D je podrazred, potem lahko razred D podeduje od A, B in C. V programskem jeziku C ++ je podprto večkratno dedovanje. Ni podprt v programskih jezikih, kot sta Java ali C #. Vmesniki se uporabljajo za izvajanje Multiple Inheritance v teh jezikih.

Hierarhično dedovanje

Če obstajajo razredi, imenovani A kot super razredi, in B, C so podrazredi, lahko ti podrazredi podedujejo lastnosti in metode razreda A. Ta vrsta dedovanja je znana kot Hierarchical Inheritance.

Hibridno dedovanje

Obstaja še ena posebna vrsta dedovanja, ki je znana kot hibridno dedovanje. Je kombinacija večnivojske in več dediščin. Če so A, B, C in D razredi in B deduje od A in D deduje od B in C, potem gre za hibridno dedovanje.

Kakšne so podobnosti med polimorfizmom in dedovanjem v OOP?

Oba sta koncepta objektno usmerjenega programiranja

Kakšna je razlika med polimorfizmom in dedovanjem v OOP?

Diff Article Sredina pred mizo

Polimorfizem vs dedovanjem v OOP

Polimorfizem je sposobnost predmeta, da se vede na več načinov. Dedovanje je ustvarjanje novega razreda z uporabo lastnosti in metod obstoječega razreda.
Uporaba
Polimorfizem se uporablja za predmete, ki pokličejo katero obliko metod med prevajanjem in izvajanjem. Dedovanje se uporablja za ponovno uporabo kode.
Izvajanje
Polimorfizem se izvaja v metodah. Dedovanje se izvaja v razredih.
Kategorije
Polimorfizem lahko razdelimo na preobremenitev in prevlado. Dedovanje lahko razdelimo na enostopenjsko, večnivojsko, hierarhično, hibridno in večkratno dedovanje.

Povzetek - Polimorfizem vs dedovanjem v OOP

Polimorfizem in dedovanje sta glavna pojma objektno usmerjenega programiranja. Razlika med polimorfizmom in dedovanjem v OOP je v tem, da je polimorfizem pogost vmesnik več oblik in je dedovanje ustvarjanje novega razreda z uporabo lastnosti in metod obstoječega razreda. Oba koncepta se pogosto uporabljata pri razvoju programske opreme.

Prenesite PDF Polimorfizem vs dedovanjem v OOP

Lahko prenesete različico tega članka v obliki PDF in jo uporabite za uporabo brez povezave, kot je navedeno v opombi. Prenesite različico PDF tukaj Razlika med polimorfizmom in dedovanjem v OOP

Priporočena: