Intern
Čo je dedičnosť v programovaní a na čo slúži?
sobes.tech AI
Odpoveď od AI
Dedičstvo je mechanizmus objektovo orientovaného programovania (OOP), ktorý umožňuje jednej triede (potomkovi, odvodené) dediť vlastnosti (atribúty) a správanie (metódy) od inej triedy (rodičovskej, základnej).
Používa sa na:
- Opakované použitie kódu: Metódy a atribúty základnej triedy sú dostupné v odvodené, čím sa zabraňuje duplikácii kódu.
- Vytváranie hierarchií tried: Umožňuje modelovať vzťahy "je" (is-a) medzi objektmi. Napríklad,
PesjeZvieratá. - Rozšírenie funkčnosti: Odvodená trieda môže pridávať vlastné atribúty a metódy alebo prepísať (zmeniť) správanie zdedené.
- Polymorfizmus: Spolu s dynamickým dispatchom umožňuje dedičstvo spracovávať objekty rôznych typov, odkazujúc na ich základnú triedu.
Príklad v Pythone:
class Zvieratá:
# Základná trieda
def __init__(self, meno):
self.meno = meno
def rob_zvuk(self):
pass # Prázdna metóda, bude prepísaná v odvodených triedach
class Pes(Zvieratá):
# Odvodená trieda
def __init__(self, meno, plemeno):
super().__init__(meno) # Volanie konštruktora základnej triedy
self.plemeno = plemeno
def rob_zvuk(self):
# Prepísanie metódy
print("Vau!")
# Použitie
môj_pes = Pes("Бобик", "Ovčiak")
print(môj_pes.meno) # Zdedený atribút
môj_pes.rob_zvuk() # Prepísaná metóda