Каква е разликата между състава и наследяването?
Каква е разликата между състава и наследяването?

Видео: Каква е разликата между състава и наследяването?

Видео: Каква е разликата между състава и наследяването?
Видео: Органична материя в почвата – Практическа информация 2024, Март
Anonim

Макар че и двете Наследство и Composition осигурява повторно използване на кода, main разлика между Състав и Наследство в Java е това Състав позволява повторна употреба на код, без да го разширявате, но за наследяване трябва да разширите на клас за всяка повторна употреба на код или функционалност.

Впоследствие може да се запита и кое е по-добро наследяване или състав?

1) Един причина за облагодетелстване Състав над Наследство в Java е фактът, че Java не поддържа множество наследство . 2) Състав оферти По-добре тест-способност на клас отколкото Наследство . Ако един клас е съставен от друг клас, можете лесно да създадете Mock Object, представляващ съставен клас за тестване.

Също така, какво представлява композицията в обектно ориентираното програмиране? Състав е едно от основните понятия в обект - ориентирано програмиране . Той описва клас, който препраща към един или повече обекти на други класове в променливи на екземпляра. Това ви позволява да моделирате връзка между обекти . Можете да намерите такива връзки доста редовно в реалния свят.

Имайки предвид това, какво означава композицията над наследяването?

Състав над наследството (или принцип на комбинирана повторна употреба) в обектно-ориентирано програмиране (OOP) е принципът, че класовете трябва да постигнат полиморфно поведение и повторно използване на код от тях композиция (като съдържа екземпляри от други класове, които реализират желаната функционалност), а не наследство от база

Агрегацията наследство ли е?

Наследство : разширяване на функционалността на клас чрез създаване на подклас. Отменете членовете на суперкласа в подкласовете, за да предоставите нова функционалност. Агрегация : създайте нова функционалност, като вземете други класове и ги комбинирате в нов клас.

Препоръчано: