Dedičnosť je jedným z kľúčových pojmov v programovaní objektovo orientovaný. Umožňuje triede zdediť vlastnosti a metódy inej triedy.
Jednoduché dedičstvo
Jednoduché dedenie je, keď trieda dedí iba vlastnosti a metódy z nadradenej triedy. Predstavte si, že máte triedu rodičov s názvom „Zviera“ a triedu detí s názvom „Pes“. Trieda „Pes“ by zdedila metódy a vlastnosti triedy „Zviera“, medzi inými napríklad „jesť“, „spať“, „dýchať“.
viacnásobné dedičstvo
Viacnásobné dedičstvo je, keď trieda zdedí vlastnosti a metódy z viac ako jednej nadradenej triedy. Inými slovami, podradená trieda môže mať viacero rodičovských tried. Tento typ dedenia je možný v niektorých programovacích jazykoch, ako je C++, ale nie v iných, ako je Java.
Prečo nie je povolené viacnásobné dedenie vo všetkých programovacích jazykoch?
Viacnásobné dedičstvo môže viesť k problémom s nejednoznačnosťou. Inými slovami, ak dve nadradené triedy majú metódy alebo vlastnosti s rovnakým názvom, nemusí byť jasné, ktorú z týchto metód alebo vlastností použiť pre podradenú triedu. Z tohto dôvodu niektoré programovacie jazyky neumožňujú viacnásobné dedenie.
Zoznam programovacích jazykov, ktoré podporujú viacnásobnú dedičnosť:
- C++
- Python
- Rubín
Zoznam programovacích jazykov, ktoré NEpodporujú viacnásobnú dedičnosť:
- Jáva
- C#
- PHP
Na záver, jednoduchá a viacnásobná dedičnosť sú dva kľúčové pojmy v objektovo orientovanom programovaní. Jednoduché dedenie znamená, že podriadená trieda môže dediť vlastnosti a metódy iba z jednej nadradenej triedy, zatiaľ čo viacnásobné dedenie znamená, že podriadená trieda môže dediť vlastnosti a metódy z viac ako jednej nadradenej triedy. Je dôležité poznamenať, že nie všetky programovacie jazyky umožňujú viacnásobné dedenie kvôli možnej nejednoznačnosti metód a vlastností.
Uistite sa, že rozumiete rozdielu medzi týmito dvoma kľúčovými pojmami v objektovo orientovanom programovaní!
Index
Som Sebastián Vidal, počítačový inžinier s vášňou pre technológie a DIY. Okrem toho som tvorcom tecnobits.com, kde zdieľam návody, aby bola technológia prístupnejšia a zrozumiteľnejšia pre každého.