Dědičnost

V realitě jsme často svědci toho, že třídy jsou podtřídami jiných:

  • tj. všechny objekty podtřídy jsou zároveň objekty nadtřídy, např. každý objekt typu (třídy) ChovatelPsu je současně typu Clovek nebo

  • např. každý objekt typu (třídy) Pes je současně typu DomaciZvire (alespoň v našem výseku reality - existují i psi "nedomácí"...)

Podtřída je tedy "zjemněním" nadtřídy:

  • přebírá její vlastnosti a zpravidla přidává další, rozšiřuje svou nadtřídu/předka

V Javě je každá uživatelem definovaná třída potomkem nějaké jiné - neuvedeme-li předka explicitně, je předkem vestavěná třída Object