Úkol polymorfismus
Requisitos de finalización
V zadání najdete jednoduchý úkol, který objasňuje polymorfismus a přetěžování metod.
1. Zadání úkolu
Co je cílem zadání?
- Vytvoření abstraktní rodičovské třídy Zvíře, abstraktní a přetížená metoda
VydejZvuk(). - Tvorba odvozených tříd Kočka, Pes, Koza, které dědí ze Zvíře a přepisují základní zvuk.
- Sdružení instancí těchto odlišných zvířat do jednoho společného seznamu v Razor komponentě.
- Hromadné zobrazení jmen a zvuků zvířat do tabulky pomocí jednoho společného cyklu.
Zadání
Vytvořte abstraktní bázovou třídu Zvire, která bude obsahovat vlastnost Jmeno a abstraktní metodu VydejZvuk(). Přímo do této bázové třídy přidejte i její přetíženou variantu VydejZvuk(int pocetOpakovani), která pomocí cyklu zopakuje základní zvuk tolikrát, kolik udává vstupní parametr.
Z této třídy následně odvoďte tři specializované třídy: Pes, Kocka a Koza. Tyto třídy budou dědit ze společné třídy Zvire a polymorfně přepíší metodu VydejZvuk() tak, aby každá vracela svůj specifický zvířecí zvuk.
V Razor komponentě následně zajistěte následující funkcionalitu:
- Inicializace dat: Vytvořte jednu sdílenou kolekci typu
List<Zvire>a vložte do ní instance všech tří různých zvířat. - Vykreslení tabulky: Pomocí cyklu projděte tuto sdílenou kolekci a vypište její obsah do tabulky. Tabulka bude mít tři sloupce:
- V prvním sloupci zobrazte jméno zvířete.
- Ve druhém sloupci vypište výsledek základní metody
VydejZvuk(). - Ve třetím sloupci demonstrujte využití přetížené metody tím, že jí předáte číselný parametr (např. hodnotu 3) a vypíšete vícenásobně zopakovaný zvuk.
Příklad, jak by mohla stránka vypadat:
Pokud se okno nenačetlo, klikněte zde.