next up previous contents index
Next: Uživatelem definovaná priorita Up: Hierarchie tříd a dědičnost Previous: Dědičnost pomocí změny a   Obsah   Index


Vícenásobná dědičnost

Pluto podporuje vícenásobnou dědičnost. Podtřída může děděním získat vlastnosti od více než jedné nadtřídy. Tím však mohou nastat konflikty v dědičnosti.

class zamestanec[...mistnost $\Rightarrow$ string]
class student[...mistnost $\Rightarrow$ integer default 123]
class wstudent isa zamestanec, student[]

Z uvedeného vyplývá, že wstudent je podtřída tříd zamestnanec a student. Protože dědí atributy a metody obou svých předků, nastává konflikt u atributu mistnost.

Narozdíl od Javy, která povoluje pouze jednoduchou dědičnost a C++, které nedovoluje zdědit konfliktní vlastnosti, poskytuje Pluto dva různé způsoby řešení tohoto problému: (1) uživatelem definovaná priorita a (2) výběr postupu dědění, přičemž uživatelem definovaná priorita je implicitní.



Subsections

Tomáš Kubíček 2002-05-19