<< Abstraktné triedy | Obsah | Interface-y (rozhrania) >>
Abstraktné metódy majú tri hlavné vlastnosti:
V našom príklade s filmami by sme si mohli zmeniť metódu dajUmiestnenie()
v abstraktnej triede Film
. Tým by sme prinútili všetky triedy, ktoré dedia od triedy Film
, aby mali vlastnú metódu dajUmiestnenie()
. V triede Film
teda zapíšeme metódu bez tela spolu so slovíčkom abstract
:
Ak by sme potom vytvorili triedu FilmNaUSB
, ktorá by dedila od triedy Film
, ale nemala by metódu dajUmiestnenie()
, Eclipse by protestoval (inherited znamená oddedená):
Takto si pomocou mechanizmu abstraktných metód a tried vieme uchrániť funkcionalitu nášho zoznamu filmov lebo vieme, že ak máme pole filmov tak sú v nich iba objekty, ktorých triedy dedia od triedy Film
a všetky majú funkčnú metódu dajUmiestnenie()
. Teda bez obáv môžeme volať napríklad nasledujúcu metódu triedy Film
, ktorá vráti názvy filmov a ich umiestnenia.