Koja je razlika između sastava i nasljeđivanja?
Koja je razlika između sastava i nasljeđivanja?

Video: Koja je razlika između sastava i nasljeđivanja?

Video: Koja je razlika između sastava i nasljeđivanja?
Video: TIPOVI NASLJEĐIVANJA: DOMINANTNO-RECESIVNO, INTERMEDIJARNO, KODOMINANTNO, VEZANI GENI, POLIGENSKO... 2024, Travanj
Anonim

Iako oboje Nasljedstvo i Sastav osigurava ponovnu upotrebu koda, main razlika između Sastav i Nasljedstvo u Javi je to Sastav dopušta ponovna upotreba od koda bez proširenja, ali za nasljeđivanje morate proširiti the razreda za svaku ponovnu upotrebu od koda ili funkcionalnosti.

Nakon toga se može zapitati koji je bolji nasljeđivanje ili sastav?

1) Jedan razlog favoriziranja Sastav nad Nasljedstvo u Javi je činjenica da Java ne podržava višestruke nasljedstvo . 2) Sastav ponude bolje test-sposobnost klase nego Nasljedstvo . Ako jedan Klasa se sastoji od druge klase, možete jednostavno stvoriti Mock Object koji predstavlja sastavljenu klasu radi testiranja.

Također, što je kompozicija u objektno orijentiranom programiranju? Sastav jedan je od temeljnih pojmova u objekt - orijentirano programiranje . Opisuje klasu koja upućuje na jednu ili više njih predmeta drugih klasa u varijablama instance. To vam omogućuje da modelirate asocijaciju između predmeta . Takve veze možete pronaći sasvim redovito u stvarnom svijetu.

Imajući to u vidu, što znači sastav nad nasljeđivanjem?

Sastav nad nasljedstvom (ili princip kompozitne ponovne upotrebe) u objektno orijentiranom programiranju (OOP) je princip da klase trebaju postići polimorfno ponašanje i ponovnu upotrebu koda svojim sastav (sadržavanjem instanci drugih klasa koje implementiraju željenu funkcionalnost), a ne nasljedstvo iz baze

Je li agregacija nasljeđe?

Nasljedstvo : proširiti funkcionalnost klase stvaranjem podklase. Nadjačajte članove nadklase u podklasama kako biste pružili novu funkcionalnost. Agregacija : stvoriti novu funkcionalnost uzimajući druge klase i kombinirajući ih u novu klasu.

Preporučeni: