Atšķirība Starp Polimorfismu Un Mantojumu OOP

Satura rādītājs:

Atšķirība Starp Polimorfismu Un Mantojumu OOP
Atšķirība Starp Polimorfismu Un Mantojumu OOP

Video: Atšķirība Starp Polimorfismu Un Mantojumu OOP

Video: Atšķirība Starp Polimorfismu Un Mantojumu OOP
Video: Kādos gadījumos saistībā ar mantojumu ir nepieciešams tiesas process? 2024, Aprīlis
Anonim

Galvenā atšķirība - polimorfisms pret mantojumu OOP

Programmatūras izstrādei parasti izmanto objektorientētu programmēšanu (OOP). Daudzas programmēšanas valodas atbalsta objektorientētu programmēšanu. Objektorientētā programmēšana ir metodoloģija programmas projektēšanai, izmantojot klases un objektus. OOP klase ir objekta izveides plāns. Klasei ir īpašības un metodes. Objekts ir klases eksemplārs. OOP satur četrus pīlārus, piemēram, mantojumu, polimorfismu, abstrakciju un iekapsulēšanu. Šajā rakstā ir aplūkota atšķirība starp polimorfismu un mantojumu OOP. Galvenā atšķirība starp polimorfismu un mantojumu OOP ir tā, ka polimorfisms ir objekta spēja izturēties vairākos veidos, un mantojums ir izveidot jaunu klasi, izmantojot esošās klases īpašības un metodes.

SATURS

1. Pārskats un galvenās atšķirības

2. Kas ir polimorfisms OOP

3. Kas ir iedzimtība OOP

4. Līdzības starp polimorfismu un mantojumu OOP

5. Blakus salīdzinājums - Polimorfisms vs Mantojums OOP tabulas veidā

6. Kopsavilkums

Kas ir polimorfisms OOP?

Polimorfisms norāda uz vairākām formām. Vienam objektam var būt vairākas uzvedības. Polimorfismu var iedalīt divās kategorijās. Viņi ir pārslogoti un pārspēj.

Pārslodze

Skatiet zemāk Java valodā rakstīto programmu.

Atšķirība starp polimorfismu un mantojumu OOP
Atšķirība starp polimorfismu un mantojumu OOP

01. attēls: Pārslodze

Saskaņā ar iepriekš minēto programmu tiek izveidots A tipa objekts. Zvanot obj.sum (); tas dos rezultātu, kas saistīts ar metodi summa (). Zvanot uz obj.sum (2,3); tas dos rezultātu, kas saistīts ar summu (int a, int b). Var novērot, ka vienam un tam pašam objektam ir atšķirīga uzvedība atkarībā no situācijas. Ja ir vairākas metodes ar tādu pašu nosaukumu, bet ar dažādiem parametriem, to sauc par pārslodzi. To sauc arī par statisko saistīšanu vai kompilēšanas laika polimorfismu.

Galvenais

Cits polimorfisma veids ir svarīgāks. Skatiet zemāk Java valodā rakstīto programmu.

Atšķirība starp polimorfismu un mantojumu OOP attēlā 02
Atšķirība starp polimorfismu un mantojumu OOP attēlā 02

02. attēls: ignorēšana

Saskaņā ar iepriekš minēto programmu A klasē ir metožu displejs (). B klase pārsniedz A klasi. Tāpēc visām A klases metodēm var piekļūt B klase. Tā ir mantošana. Mantojuma jēdziens ir aprakstīts vēlāk.

Arī B klasei ir tāda pati metode (). Veidojot A tipa objektu un izsaucot displeja metodi, izeja sniegs B. A klases displeja metode tiek ignorēta ar B klases attēlošanas metodi. Tātad, izeja ir B.

Ja ir metodes ar tādu pašu nosaukumu un parametriem, bet divās dažādās klasēs, un tās ir saistītas ar mantojumu, to sauc par primāru. Tas ir pazīstams arī kā novēlota saistīšana, dinamiskā saistīšana, izpildlaika polimorfisms. Pārslodzi un nepārsniegšanu sauc par polimorfismu. Tā ir galvenā koncepcija objektorientētajā programmēšanā.

Kas ir mantošana OOP?

Skatiet zemāk Java valodā rakstīto programmu.

Galvenā atšķirība starp polimorfismu un mantojumu OOP
Galvenā atšķirība starp polimorfismu un mantojumu OOP

03. attēls: Mantojuma piemērs

Saskaņā ar iepriekš minēto programmu A klasei ir metode summa (), bet B klasei - metode sub ().

A klases sum () metodi var izmantot B klasē, izmantojot paplašināšanas atslēgvārdu. Esošās klases rekvizītu un metožu atkārtota izmantošana, lai izveidotu jaunu klasi, tiek dēvēta par Mantošanu. Pat B klasē nav sum () metodes; tas ir mantots no A klases. Mantojums ir noderīgs koda atkārtotai izmantošanai. Vecāko klasi sauc par bāzes klasi, superklasi vai vecāku klasi. Atvasināto klasi sauc par apakšklasi vai bērnu klasi.

Mantojuma veidi

Ir dažādi mantojuma veidi. Tie ir viena līmeņa mantojums, daudzlīmeņu mantojums, daudzkārtējs mantojums, hierarhisks mantojums un hibrīds mantojums.

Vienreizējs mantojums

Vienreizējā mantojumā ir viena super klase un viena apakšklase. Ja A klase ir super klase un B klase ir apakšklase, visām A klases īpašībām un metodēm var piekļūt B klase. Ir tikai viens līmenis; tāpēc to sauc par vienlīmeņa mantojumu.

Daudzlīmeņu mantojums

Daudzlīmeņu mantojumā ir trīs klases līmeņi. Starpklase manto no superklases. Apakšklase manto no starpklases. Ja ir trīs klases, jo A, B un C un A ir super klase, un B ir starpklase. Tad B pārmanto no A, bet C - no B, tas ir daudzlīmeņu mantojums.

Daudzkārtējs mantojums

Vairāku mantojumu sarakstā ir daudz superklases un viena apakšklase. Ja ir trīs superklases, ko sauc par A, B, C un D ir apakšklase, tad D klase var mantot no A, B un C. Programmēšanas valodā C ++ tiek atbalstīta vairākkārtēja mantošana. Tas netiek atbalstīts programmēšanas valodās, piemēram, Java vai C #. Saskarnes tiek izmantotas vairāku mantojumu ieviešanai šajās valodās.

Hierarhiskā mantošana

Ja ir klases, kuras sauc par A kā superklases, un B, C ir apakšklases, šīs apakšklases var mantot A klases īpašības un metodes. Šāda veida mantojuma veidu sauc par hierarhisko mantojumu.

Hibrīda mantojums

Ir vēl viens īpašs mantojuma veids, kas pazīstams kā hibrīds mantojums. Tā ir vairāku līmeņu un vairāku mantojumu kombinācija. Ja A, B, C un D ir klases un B ir mantojis no A un D pārmanto gan B, gan C, tad tas ir hibrīds mantojums.

Kādas ir polimorfisma un mantojuma līdzības OOP?

Abi ir objektorientētas programmēšanas jēdzieni

Kāda ir atšķirība starp polimorfismu un mantojumu OOP?

Atšķirīgs raksts vidū pirms tabulas

Polimorfisms pret mantojumu OOP

Polimorfisms ir objekta spēja izturēties vairākos veidos. Mantošana ir jaunas klases izveide, izmantojot esošās klases īpašības un metodes.
Lietošana
Polimorfismu izmanto objektiem, lai izsauktu metožu formu sastādīšanas laikā un izpildlaikā. Mantojumu izmanto koda atkārtotai izmantošanai.
Īstenošana
Polimorfisms tiek ieviests metodēs. Mantošana tiek īstenota klasēs.
Kategorijas
Polimorfismu var iedalīt pārslodzē un pārsvarā. Mantojumu var iedalīt vienlīmeņa, daudzlīmeņu, hierarhiskā, hibrīdā un daudzkārtējā mantojumā.

Kopsavilkums - polimorfisms pret mantojumu OOP

Polimorfisms un mantošana ir galvenie jēdzieni objektorientētajā programmēšanā. Atšķirība starp polimorfismu un mantojumu OOP ir tā, ka polimorfisms ir kopīga saskarne ar vairākām formām, un mantojums ir jaunas klases izveidošana, izmantojot esošās klases īpašības un metodes. Abi jēdzieni tiek plaši izmantoti programmatūras izstrādē.

Lejupielādējiet PDF polimorfismu pret mantojumu OOP

Jūs varat lejupielādēt šī raksta PDF versiju un izmantot to bezsaistes vajadzībām, kā norādīts piezīmē. Lūdzu, lejupielādējiet PDF versiju šeit Starpība starp polimorfismu un mantojumu OOP

Ieteicams: