Viac na
Môže mať abstraktná trieda konštruktor?
Môže mať abstraktná trieda konštruktor?
Ak áno, ako ho možno použiť a na aké účely?
581
3
Môže mať abstraktná trieda konštruktor?
Ak áno, ako ho možno použiť a na aké účely?
Áno, abstraktná trieda môže mať konštruktor. Uvažujte o tom:
Nadtrieda
Product
je abstraktná a má konštruktor. Konkrétna triedaTimesTwo
má konštruktor, ktorý len natvrdo kóduje hodnotu 2. Konkrétna triedaTimesWhat
má konštruktor, ktorý umožňuje volajúcemu určiť hodnotu.Abstraktné konštruktory sa často používajú na vynútenie obmedzení alebo invariantov triedy, ako sú minimálne polia potrebné na nastavenie triedy.
Áno, môže mať konštruktor, ktorý je definovaný a správa sa rovnako ako konštruktor akejkoľvek inej triedy. Až na to, že abstraktné triedy nemožno priamo inštanciovať, iba rozšíriť, takže použitie je preto vždy z konštruktora podtriedy.
Zvážte toto:
Nadtrieda je abstraktná a má konštruktor.