Dallimi midis polimorfizmit dhe trashëgimisë në OOP

Përmbajtje:

Dallimi midis polimorfizmit dhe trashëgimisë në OOP
Dallimi midis polimorfizmit dhe trashëgimisë në OOP

Video: Dallimi midis polimorfizmit dhe trashëgimisë në OOP

Video: Dallimi midis polimorfizmit dhe trashëgimisë në OOP
Video: KOMPONENTËT E VISUAL BASIC(ang. : VISUAL BASIC COMPONENTS) . 2024, Qershor
Anonim

Dallimi kryesor – Polimorfizmi kundrejt trashëgimisë në OOP

Programimi i orientuar nga objekti (OOP) përdoret zakonisht për të zhvilluar softuer. Shumë gjuhë programimi mbështesin programimin e orientuar nga objekti. Programimi i orientuar nga objekti është një metodologji për të hartuar një program duke përdorur klasa dhe objekte. Një klasë në OOP është një plan për të krijuar një objekt. Një klasë ka veti dhe metoda. Një objekt është një shembull i një klase. OOP përmban katër shtylla si trashëgimia, polimorfizmi, abstraksioni dhe kapsulimi. Ky artikull diskuton ndryshimin midis polimorfizmit dhe trashëgimisë në OOP. Dallimi kryesor midis Polimorfizmit dhe Trashëgimisë në OOP është se Polimorfizmi është aftësia e një objekti për t'u sjellë në mënyra të shumta dhe trashëgimia është të krijojë një klasë të re duke përdorur vetitë dhe metodat e një klase ekzistuese.

Çfarë është polimorfizmi në OOP?

Polimorfizmi është për të treguar forma të shumta. Një objekt mund të ketë sjellje të shumta. Polimorfizmi mund të ndahet në dy kategori. Ata janë të mbingarkuar dhe mbizotërues.

Mbingarkesa

Referojuni programit të mëposhtëm të shkruar në Java.

Dallimi midis polimorfizmit dhe trashëgimisë në OOP
Dallimi midis polimorfizmit dhe trashëgimisë në OOP

Figura 01: Mbingarkesa

Sipas programit të mësipërm, krijohet një objekt i tipit A. Kur thërrisni obj.sum(); do të japë rezultatin që lidhet me metodën sum(). Kur thirret obj.sum(2, 3); do të japë rezultatin që lidhet me shumën (int a, int b). Mund të vërehet se i njëjti objekt ka sjellje të ndryshme në varësi të situatës. Kur ka metoda të shumta me të njëjtin emër, por me parametra të ndryshëm, ajo njihet si mbingarkesë. Njihet gjithashtu si polimorfizëm statik i lidhjes ose përpilimit të kohës.

E mbivendosur

Një lloj tjetër polimorfizmi është mbizotërues. Referojuni programit të mëposhtëm të shkruar në Java.

Dallimi midis polimorfizmit dhe trashëgimisë në OOP_Figura 02
Dallimi midis polimorfizmit dhe trashëgimisë në OOP_Figura 02

Figura 02: Mbështetja

Sipas programit të mësipërm, ekziston një metodë display() në klasën A. Klasa B shtrihet nga klasa A. Prandaj, të gjitha metodat në klasën A janë të aksesueshme nga klasa B. Është trashëgim. Koncepti i trashëgimisë përshkruhet më tej.

Klasa B gjithashtu ka të njëjtën metodë display(). Kur krijoni një objekt të tipit A dhe thirrni metodën e shfaqjes, dalja do të japë B. Metoda e shfaqjes së klasës A anashkalohet nga metoda e shfaqjes së klasës B. Pra, prodhimi është B.

Kur ka metoda me të njëjtin emër dhe parametra të njëjtë, por në dy klasa të ndryshme, dhe ato janë të lidhura me trashëgimi, ajo njihet si mbivendosje. Njihet gjithashtu si Lidhja e Vonë, Lidhja Dinamike, Polimorfizmi në kohëzgjatjeje. Mbingarkimi dhe tejkalimi quhen polimorfizëm. Është një koncept kryesor në programimin e orientuar në objekte.

Çfarë është trashëgimia në OOP?

Referojuni programit të mëposhtëm të shkruar në Java.

Dallimi kryesor midis polimorfizmit dhe trashëgimisë në OOP
Dallimi kryesor midis polimorfizmit dhe trashëgimisë në OOP

Figura 03: Shembull i trashëgimisë

Sipas programit të mësipërm, klasa A ka metodën sum() dhe klasa B ka metodën sub().

Metoda sum() e klasës A mund të përdoret në klasën B duke përdorur fjalën kyçe extension. Ripërdorimi i vetive dhe metodave në një klasë ekzistuese për të krijuar një klasë të re njihet si trashëgimi. Madje nuk ka metodë sum() në klasën B; është trashëguar nga klasa A. Trashëgimia është e dobishme për ripërdorimin e kodit. Klasa më e vjetër quhet klasa bazë, superklasa ose klasa prind. Klasa e prejardhur quhet nënklasa ose klasa fëmijë.

Llojet e trashëgimisë

Ekzistojnë lloje të ndryshme të trashëgimisë. Ato janë trashëgimi me një nivel, trashëgimi me shumë nivele, trashëgimi e shumëfishtë, trashëgimi hierarkike dhe trashëgimi hibride.

Trashëgimi e vetme

Në Trashëgimia e vetme, ekziston një super klasë dhe një nënklasë. Nëse klasa A është super klasa dhe klasa B është nënklasa, të gjitha vetitë dhe metodat e klasës A janë të aksesueshme nga klasa B. Ekziston vetëm një nivel; prandaj, quhet si trashëgimi e një niveli.

Trashëgimi me shumë nivele

Trashëgimia me shumë nivele ka tre nivele klasash. Klasa e ndërmjetme trashëgon nga super klasa. Nënklasa trashëgon nga klasa e ndërmjetme. Nëse ka tre klasa si A, B dhe C dhe A është klasa super dhe B është klasa e ndërmjetme. Pastaj B trashëgon nga A dhe C trashëgon nga B, është një trashëgimi me shumë nivele.

Trashëgimi e shumëfishtë

Në trashëgiminë e shumëfishtë, ka shumë super klasa dhe një nënklasë. Nëse ka tre super klasa të quajtura A, B, C dhe D është nënklasa, atëherë klasa D mund të trashëgojë nga A, B dhe C. Trashëgimia e shumëfishtë mbështetet në gjuhën e programimit C++. Nuk mbështetet në gjuhë programimi si Java ose C. Ndërfaqet përdoren për zbatimin e trashëgimisë së shumëfishtë në këto gjuhë.

Trashëgimia hierarkike

Nëse ka klasa të quajtura A si super klasa dhe B, C janë nënklasa, ato nënklasa mund të trashëgojnë vetitë dhe metodat e klasës A. Ky lloj trashëgimie njihet si Trashëgimi Hierarkike.

Trashëgimi hibride

Ekziston një lloj tjetër i veçantë i trashëgimisë që njihet si Trashëgimia Hibride. Është një kombinim i trashëgimive me shumë nivele dhe të shumëfishta. Nëse A, B, C dhe D janë klasa dhe B është duke trashëguar nga A dhe D është trashëguar nga B dhe C, atëherë është një trashëgimi hibride.

Cilat janë ngjashmëritë midis polimorfizmit dhe trashëgimisë në OOP?

Të dyja janë koncepte të programimit të orientuar drejt objektit

Cili është ndryshimi midis polimorfizmit dhe trashëgimisë në OOP?

Polimorfizmi vs Trashëgimia në OOP

Polimorfizmi është një aftësi e një objekti për t'u sjellë në mënyra të shumta. Trashëgimi është krijimi i një klase të re duke përdorur vetitë dhe metodat e një klase ekzistuese.
Përdorimi
Polimorfizmi përdoret për objektet që të thërrasin cilën formë metodash në kohën e përpilimit dhe kohën e ekzekutimit. Trashëgimia përdoret për ripërdorimin e kodit.
Zbatim
Polimorfizmi zbatohet në metoda. Trashëgimia zbatohet në klasa.
Kategoritë
Polimorfizmi mund të ndahet në mbingarkesë dhe mbingarkesë. Trashëgimia mund të ndahet në trashëgimi me një nivel, me shumë nivele, hierarkike, hibride dhe të shumëfishta.

Përmbledhje – Polimorfizmi vs Trashëgimia në OOP

Polimorfizmi dhe trashëgimia janë koncepte kryesore në programimin e orientuar drejt objekteve. Dallimi midis Polimorfizmit dhe Trashëgimisë në OOP është se Polimorfizmi është një ndërfaqe e përbashkët për forma të shumta dhe Trashëgimia është krijimi i një klase të re duke përdorur vetitë dhe metodat e një klase ekzistuese. Të dy konceptet përdoren gjerësisht në zhvillimin e softuerit.

Shkarkoni Polimorfizmin PDF kundër Trashëgimisë në OOP

Mund të shkarkoni versionin PDF të këtij artikulli dhe ta përdorni për qëllime jashtë linje sipas shënimit të citimit. Ju lutemi shkarkoni versionin PDF këtu Dallimi midis polimorfizmit dhe trashëgimisë në OOP

Recommended: