Aký je rozdiel medzi zložením a dedičnosťou?
Aký je rozdiel medzi zložením a dedičnosťou?

Video: Aký je rozdiel medzi zložením a dedičnosťou?

Video: Aký je rozdiel medzi zložením a dedičnosťou?
Video: JEDNODUCHÉ a ZLOŽENÉ ÚROKOVANIE - aké sú ROZDIELY? 2024, Apríl
Anonim

Aj keď oboje Dedičnosť a Composition poskytuje opätovnú použiteľnosť kódu, hlavné rozdiel medzi zložením a Dedičnosť v Jave je to tak Zloženie umožňuje opätovné použitie kód bez jeho predĺženia, ale pre dedičstvo ho musíte predĺžiť a triedy na akékoľvek opätovné použitie z kód alebo funkčnosť.

Následne sa možno pýtať, čo je lepšie dedičstvo alebo zloženie?

1) Jeden dôvod uprednostňovania Zloženie cez Dedičnosť v Jave je fakt, že Java nepodporuje viacnásobné dedičstvo . 2) Zloženie ponúka lepšie testovacia schopnosť triedy ako Dedičnosť . Ak jeden trieda je zložená z inej triedy, môžete ľahko vytvoriť Mock Object reprezentujúci zloženú triedu kvôli testovaniu.

Tiež, čo je kompozícia v objektovo orientovanom programovaní? Zloženie je jedným zo základných pojmov v objekt - orientované programovanie . Opisuje triedu, ktorá odkazuje na jednu alebo viac predmety iných tried v premenných inštancií. To vám umožňuje modelovať spojenie medzi predmety . Takéto vzťahy nájdete v reálnom svete celkom bežne.

Vzhľadom na to, čo znamená zloženie nad dedičstvom?

Zloženie nad dedičstvom (alebo princíp kompozitného opätovného použitia) v objektovo orientovanom programovaní (OOP) je princíp, že triedy by mali dosiahnuť polymorfné správanie a opätovné použitie kódu zloženie (obsahovaním inštancií iných tried, ktoré implementujú požadovanú funkcionalitu), a nie dedičstvo zo základne

Je agregácia dedičstvom?

Dedičnosť : rozšírenie funkčnosti triedy vytvorením podtriedy. Prepíšte členov nadtriedy v podtriedach, aby ste poskytli nové funkcie. Agregácia : vytvorte novú funkčnosť prebratím iných tried a ich spojením do novej triedy.

Odporúča: