Ero Polymorfismin Ja Perinnöllisyyden Välillä OOP: Ssa

Sisällysluettelo:

Ero Polymorfismin Ja Perinnöllisyyden Välillä OOP: Ssa
Ero Polymorfismin Ja Perinnöllisyyden Välillä OOP: Ssa

Video: Ero Polymorfismin Ja Perinnöllisyyden Välillä OOP: Ssa

Video: Ero Polymorfismin Ja Perinnöllisyyden Välillä OOP: Ssa
Video: FP против ООП | Для чайников 2024, Huhtikuu
Anonim

Keskeinen ero - Polymorfismi vs. perintö OOP: ssa

Kohdekeskeistä ohjelmointia (OOP) käytetään yleisesti ohjelmistojen kehittämiseen. Monet ohjelmointikielet tukevat olio-ohjelmointia. Kohdekeskeinen ohjelmointi on menetelmä suunnitella ohjelma luokkien ja objektien avulla. OOP: n luokka on piirustus objektin luomisesta. Luokalla on ominaisuuksia ja menetelmiä. Objekti on luokan esiintymä. OOP sisältää neljä pilaria, kuten perintö, polymorfismi, abstraktio ja kapselointi. Tässä artikkelissa käsitellään polymorfismin ja perinnön välistä eroa OOP: ssa. Tärkein ero polymorfismin ja perinnöllisyyden välillä OOP: ssa on se, että polymorfismi on kohteen kyky käyttäytyä monin tavoin ja perintö on luoda uusi luokka käyttämällä olemassa olevan luokan ominaisuuksia ja menetelmiä.

SISÄLLYS

1. Esittely ja keskeinen ero

2. Mikä on Polymorphism OOP

3. Mikä Perintö OOP

4. yhtäläisyyksiä polymorfismia Perintö OOP

5. Side by side vertailu - Polymorphism vs. periytyminen OOP taulukkomuodossa

6. Yhteenveto

Mikä on polymorfismi OOP: ssa?

Polymorfismin on osoitettava useita muotoja. Yhdellä esineellä voi olla useita käyttäytymismalleja. Polymorfismi voidaan jakaa kahteen luokkaan. Ne ylikuormittavat ja ohittavat.

Ylikuormitus

Katso alla olevaa Java-ohjelmaa.

Ero polymorfismin ja perinnöllisyyden välillä OOP: ssa
Ero polymorfismin ja perinnöllisyyden välillä OOP: ssa

Kuva 01: Ylikuormitus

Yllä olevan ohjelman mukaan luodaan tyypin A objekti. Kun soitat obj.sum (); se antaa menetelmän summaan () liittyvän tuotoksen. Kun soitat obj.sum (2,3); se antaa summaan liittyvän tuotoksen (int a, int b). Voidaan havaita, että samalla esineellä on erilainen käyttäytyminen tilanteesta riippuen. Kun menetelmiä on useita samalla nimellä, mutta eri parametreilla, se tunnetaan ylikuormituksena. Se tunnetaan myös nimellä staattinen sitoutuminen tai kokoamisajan polymorfismi.

Korvaava

Toinen polymorfismityyppi on ohittavaa. Katso alla olevaa Java-ohjelmaa.

Ero polymorfismin ja perinnöllisyyden välillä OOP Kuvassa 02
Ero polymorfismin ja perinnöllisyyden välillä OOP Kuvassa 02

Kuva 02: Ohittaminen

Yllä olevan ohjelman mukaan luokassa A. on menetelmän näyttö (). Luokka B ulottuu luokasta A. Siksi kaikki luokan A menetelmät ovat luokkaan B. Se on perintö. Perintökäsitettä kuvataan myöhemmin myöhemmin.

Luokalla B on myös sama menetelmän näyttö (). Kun luodaan tyypin A objekti ja kutsutaan näyttötapa, lähtö antaa B: n. Luokan A näyttötapa ohitetaan luokan B näyttötavalla. Joten, lähtö on B.

Kun on olemassa menetelmiä, joilla on sama nimi ja samat parametrit, mutta kahdessa eri luokassa, ja ne liittyvät perintöön, se tunnetaan ohittavana. Se tunnetaan myös nimellä myöhäinen sitoutuminen, dynaaminen sitoutuminen, ajonaikainen polymorfismi. Ylikuormitusta ja ohittamista kutsutaan polymorfismiksi. Se on pääkohde kohdennetussa ohjelmoinnissa.

Mikä on perintö OOP: ssa?

Katso alla olevaa Java-ohjelmaa.

Keskeinen ero polymorfismin ja perinnön välillä OOP: ssa
Keskeinen ero polymorfismin ja perinnön välillä OOP: ssa

Kuva 03: Esimerkki perinnöstä

Yllä olevan ohjelman mukaan luokassa A on menetelmä summa () ja luokassa B menetelmä sub ().

Luokan A sum () -menetelmää voidaan käyttää luokassa B käyttämällä laajennettua avainsanaa. Olemassa olevan luokan ominaisuuksien ja menetelmien uudelleenkäyttö uuden luokan luomiseksi tunnetaan nimellä Perintö. Jopa sum () -menetelmää ei ole luokassa B; se on peritty luokasta A. Perintö on hyödyllistä koodin uudelleenkäytettävyyden kannalta. Vanhempaa luokkaa kutsutaan perusluokaksi, superluokaksi tai vanhemmaksi luokaksi. Johdettua luokkaa kutsutaan alaluokka- tai lapsiluokaksi.

Perintötyypit

Perintöjä on erilaisia. Ne ovat yksitasoinen perintö, monitasoinen perintö, moninkertainen perintö, hierarkkinen perintö ja hybridiperintö.

Yksi perintö

Yksittäisessä perinnössä on yksi superluokka ja yksi alaluokka. Jos luokka A on superluokka ja luokka B on alaluokka, kaikki luokan A ominaisuudet ja menetelmät ovat luokka B: n käytettävissä. Tasoja on vain yksi; siksi sitä kutsutaan yksitasoiseksi perinnöksi.

Monitasoinen perintö

Monitasoisessa perinnössä on kolme luokkaa. Väliluokka perii superluokan. Alaluokka perii väliluokan. Jos luokkia on kolme, A, B ja C ja A on superluokka ja B on väliluokka. Sitten B perii A: lta ja C perii B: ltä, se on monitasoinen perintö.

Moninkertainen perintö

Moniperinnössä on monia superluokkia ja yksi alaluokka. Jos on kolme superluokkaa, nimeltään A, B, C ja D on alaluokka, luokka D voi periä A: sta, B: stä ja C: stä. Moninkertaista perintöä tuetaan ohjelmointikielellä C ++. Sitä ei tueta ohjelmointikielillä, kuten Java tai C #. Liitäntöjä käytetään useiden perintöjen toteuttamiseen näillä kielillä.

Hierarkkinen perintö

Jos on luokkia, joita kutsutaan superluokiksi A ja B, C ovat alaluokkia, nämä alaluokat voivat periä luokan A ominaisuuksia ja menetelmiä. Tällainen perintötyyppi tunnetaan nimellä hierarkkinen perintö.

Hybridi perintö

On olemassa toinen erityinen perintötyyppi, joka tunnetaan nimellä hybridiperintö. Se on yhdistelmä monitasoista ja useita perintöjä. Jos A, B, C ja D ovat luokkia ja B perii A: sta ja D perii sekä B: stä että C: stä, se on hybridiperintö.

Mitkä ovat polymorfismin ja perinnöllisyyden yhtäläisyydet OOP: ssa?

Molemmat ovat olio-ohjelmoinnin käsitteitä

Mikä on ero polymorfismin ja perinnöllisyyden välillä OOP: ssa?

Erilainen artikkeli keskellä taulukkoa

Polymorfismi vs. perintö OOP: ssa

Polymorfismi on kohteen kyky käyttäytyä monin tavoin. Perintö on luoda uusi luokka käyttämällä olemassa olevan luokan ominaisuuksia ja menetelmiä.
Käyttö
Polymorfismia käytetään objektien kutsumaan minkä tahansa menetelmän muodon kokoamis- ja ajonaikaisina. Perintöä käytetään koodin uudelleenkäytettäväksi.
Toteutus
Polymorfismi toteutetaan menetelmissä. Perintö toteutetaan luokissa.
Luokat
Polymorfismi voidaan jakaa ylikuormitukseen ja ohittamiseen. Perintö voidaan jakaa yksitasoiseksi, monitasoiseksi, hierarkkiseksi, hybridiksi ja moniperinnöksi.

Yhteenveto - Polymorfismi vs. perintö OOP: ssa

Polymorfismi ja periytyminen ovat olio-ohjelmoinnin pääkäsitteitä. Ero polymorfismin ja perinnöllisyyden välillä OOP: ssa on se, että polymorfismi on yhteinen rajapinta useille muodoille ja perintö on luoda uusi luokka käyttämällä olemassa olevan luokan ominaisuuksia ja menetelmiä. Molempia käsitteitä käytetään laajasti ohjelmistokehityksessä.

Lataa PDF-tiedosto Polymorphism vs Inheritance in OOP

Voit ladata tämän artikkelin PDF-version ja käyttää sitä offline-tarkoituksiin lainausviestin mukaan. Lataa PDF-versio tästä Ero polymorfismin ja perinnön välillä OOP: ssa

Suositeltava: