Tofauti Kati ya Polymorphism na Urithi katika OOP

Orodha ya maudhui:

Tofauti Kati ya Polymorphism na Urithi katika OOP
Tofauti Kati ya Polymorphism na Urithi katika OOP

Video: Tofauti Kati ya Polymorphism na Urithi katika OOP

Video: Tofauti Kati ya Polymorphism na Urithi katika OOP
Video: MELBOURNE, Australia: once the world’s richest city (vlog 2) 2024, Novemba
Anonim

Tofauti Muhimu – Polymorphism dhidi ya Urithi katika OOP

Upangaji Unaolenga Kipengele (OOP) kwa kawaida hutumiwa kutengeneza programu. Lugha nyingi za programu zinaunga mkono upangaji unaolenga kitu. Upangaji unaolenga kitu ni mbinu ya kubuni programu kwa kutumia madarasa na vitu. Darasa katika OOP ni mchoro wa kuunda kitu. Darasa lina mali na njia. Kitu ni mfano wa darasa. OOP ina nguzo nne kama vile Urithi, Polymorphism, Abstraction na Encapsulation. Nakala hii inajadili tofauti kati ya Polymorphism na Urithi katika OOP. Tofauti kuu kati ya Polymorphism na Urithi katika OOP ni kwamba Polymorphism ni uwezo wa kitu kutenda kwa njia nyingi na Urithi ni kuunda darasa jipya kwa kutumia sifa na mbinu za darasa lililopo.

Polimorphism katika OOP ni nini?

Polimorphism ni kuashiria aina nyingi. Kitu kimoja kinaweza kuwa na tabia nyingi. Polymorphism inaweza kugawanywa katika makundi mawili. Zinapakia kupita kiasi na kupitisha.

Inapakia kupita kiasi

Rejelea programu iliyo hapa chini iliyoandikwa kwa Java.

Tofauti Kati ya Polymorphism na Urithi katika OOP
Tofauti Kati ya Polymorphism na Urithi katika OOP

Kielelezo 01: Kupakia kupita kiasi

Kulingana na programu iliyo hapo juu, kitu cha aina A kinaundwa. Wakati wa kupiga simu obj.sum(); itatoa matokeo yanayohusiana na njia sum(). Wakati wa kupiga simu obj.sum(2, 3); itatoa matokeo yanayohusiana na jumla (int a, int b). Inaweza kuzingatiwa kuwa kitu kimoja kina tabia tofauti kulingana na hali. Wakati kuna njia nyingi zilizo na jina moja, lakini kwa vigezo tofauti, inajulikana kama upakiaji kupita kiasi. Pia inajulikana kama kuunganisha tuli au upolimishaji wa wakati wa kukusanya.

Inazidi

Aina nyingine ya Polymorphism imebatilishwa. Rejelea programu iliyo hapa chini iliyoandikwa katika Java.

Tofauti Kati ya Polymorphism na Urithi katika OOP_Kielelezo 02
Tofauti Kati ya Polymorphism na Urithi katika OOP_Kielelezo 02

Kielelezo 02: Kubatilisha

Kulingana na programu iliyo hapo juu, kuna njia ya kuonyesha() katika darasa A. Darasa B linaenea kutoka darasa A. Kwa hivyo, mbinu zote za darasa A zinaweza kufikiwa na darasa B. Ni urithi. Dhana ya urithi itaelezwa zaidi baadaye.

Daraja B pia wana njia sawa ya kuonyesha(). Wakati wa kuunda kipengee cha aina A na mbinu ya onyesho la kupiga simu, matokeo yatatoa B. Mbinu ya kuonyesha ya Hatari A inabatilishwa na mbinu ya kuonyesha ya darasa B. Kwa hivyo, matokeo ni B.

Kunapokuwa na mbinu zenye jina moja na vigezo sawa lakini katika tabaka mbili tofauti, na zimeunganishwa na urithi inajulikana kama kubatilisha. Pia inajulikana kama Kufunga kwa Marehemu, Kufunga kwa Nguvu, Upolimishaji wa Wakati wa Runtime. Kupakia kupita kiasi na kuzidisha kunaitwa Polymorphism. Ni dhana kuu katika Upangaji Unaozingatia Kitu.

Urithi katika OOP ni nini?

Rejelea programu iliyo hapa chini iliyoandikwa kwa Java.

Tofauti Muhimu Kati ya Polymorphism na Urithi katika OOP
Tofauti Muhimu Kati ya Polymorphism na Urithi katika OOP

Kielelezo 03: Mfano wa Urithi

Kulingana na mpango ulio hapo juu, darasa A lina mbinu sum() na darasa B lina mbinu ndogo().

Njia ya jumla() ya darasa A inaweza kutumika katika darasa B kwa kutumia neno kuu la kupanua. Kutumia tena sifa na mbinu katika darasa lililopo kuunda darasa jipya kunajulikana kama Urithi. Hata hakuna njia ya jumla () katika darasa B; imerithiwa kutoka kwa darasa A. Urithi ni muhimu kwa utumiaji wa msimbo tena. Darasa la wazee linaitwa darasa la msingi, darasa la juu au darasa la wazazi. Darasa linalotokana linaitwa darasa ndogo au darasa la watoto.

Aina za Urithi

Kuna aina mbalimbali za urithi. Nazo ni Urithi wa Ngazi Moja, Urithi wa Ngazi nyingi, Urithi wa Nyingi, Urithi wa Kitabaka na Urithi wa Mseto.

Urithi Mmoja

Katika Urithi Mmoja, kuna darasa moja bora na daraja ndogo moja. Ikiwa darasa A ni darasa kuu na daraja B ni tabaka ndogo, sifa zote na mbinu za darasa A zinapatikana kwa darasa B. Kuna ngazi moja tu; kwa hivyo, inaitwa urithi wa ngazi moja.

Urithi wa Ngazi Nyingi

Katika Urithi wa Ngazi nyingi kuna viwango vitatu vya madarasa. Darasa la kati hurithi kutoka kwa tabaka bora. Daraja ndogo hurithi kutoka kwa tabaka la kati. Ikiwa kuna madarasa matatu kama A, B na C na A ndio darasa kuu na B ndio darasa la kati. Kisha B anarithi kutoka kwa A na C anarithi kutoka kwa B, ni Urithi wa Ngazi nyingi.

Urithi Nyingi

Katika Urithi Nyingi, kuna madarasa mengi bora na darasa ndogo moja. Ikiwa kuna madarasa matatu bora yanayoitwa A, B, C na D ni tabaka ndogo, basi darasa la D linaweza kurithi kutoka kwa A, B na C. Urithi wa Nyingi unatumika katika lugha ya programu C++. Haitumiki katika lugha za programu kama vile Java au C. Violesura hutumika kutekeleza Urithi Nyingi katika lugha hizi.

Urithi wa Hierarkia

Ikiwa kuna madarasa yanayoitwa A as superclass na B, C ni madaraja madogo, tabaka hizo ndogo zinaweza kurithi sifa na mbinu za darasa A. Aina hiyo ya aina ya urithi inajulikana kama Hierarchical Heritance.

Urithi wa Mseto

Kuna aina nyingine maalum ya urithi ambayo inajulikana kama Urithi wa Mseto. Ni mchanganyiko wa urithi wa ngazi nyingi na nyingi. Ikiwa A, B, C na D ni madaraja na B anarithi kutoka kwa A na D anarithi kutoka kwa B na C, basi ni urithi wa Mseto.

Ni Nini Zinazofanana Kati ya Polymorphism na Mirathi katika OOP?

Zote ni dhana za Upangaji Wenye Malengo ya Kitu

Nini Tofauti Kati ya Polymorphism na Urithi katika OOP?

Polimorphism dhidi ya Urithi katika OOP

Polimofi ni uwezo wa kitu kutenda kwa njia nyingi. Urithi ni kuunda darasa jipya kwa kutumia sifa na mbinu za darasa lililopo.
Matumizi
Polimorphism hutumika kwa vitu kuita ni aina gani ya mbinu kwa wakati wa kukusanya na wakati wa utekelezaji. Urithi hutumika kwa utumiaji wa msimbo tena.
Utekelezaji
Polimorphism inatekelezwa kwa mbinu. Urithi unatekelezwa katika madarasa.
Kategoria
Polimorphism inaweza kugawanywa katika upakiaji kupita kiasi na ubadhirifu. Urithi unaweza kugawanywa katika ngazi moja, ngazi mbalimbali, daraja, mseto, na urithi nyingi.

Muhtasari – Polymorphism dhidi ya Urithi katika OOP

Polimafifi na Urithi ni dhana kuu katika Utayarishaji Unaozingatia Kipengee. Tofauti kati ya Polymorphism na Urithi katika OOP ni kwamba Polymorphism ni kiolesura cha kawaida cha aina nyingi na Urithi ni kuunda darasa jipya kwa kutumia sifa na mbinu za darasa lililopo. Dhana zote mbili zinatumika sana katika Ukuzaji wa Programu.

Pakua Polymorphism ya PDF dhidi ya Urithi katika OOP

Unaweza kupakua toleo la PDF la makala haya na uitumie kwa madhumuni ya nje ya mtandao kulingana na dokezo la manukuu. Tafadhali pakua toleo la PDF hapa Tofauti Kati ya Polymorphism na Urithi katika OOP

Ilipendekeza: