Разлика между множествено и многостепенно наследяване

Съдържание:

Разлика между множествено и многостепенно наследяване
Разлика между множествено и многостепенно наследяване

Видео: Разлика между множествено и многостепенно наследяване

Видео: Разлика между множествено и многостепенно наследяване
Видео: Бриллиантовая рука (FullHD, комедия, реж. Леонид Гайдай, 1968 г.) 2024, Юли
Anonim

Ключова разлика – множествено срещу многостепенно наследяване

Обектно-ориентираното програмиране (ООП) е парадигма за проектиране на програма, използваща класове и методи. Сценариите от реалния свят могат да бъдат нанесени на обекти. Следователно е лесно да се изграждат софтуерни решения. Класът е план за изграждане на обект. Той съдържа свойства и методи. Например, преди да създадете студентски обект, трябва да има студентски клас със свойства и методи. Ученикът може да има свойства като идентификатор на ученик, име и методи като четене, писане, изучаване. Методите описват поведението, докато свойствата са атрибутите. След създаването на класа е възможно да създавате обекти, използвайки ги. Създаването на обект е известно също като Създаване на обект. Обектът не съществува в изолация. Те комуникират с други обекти и данните се предават в рамките на обектите. Един стълб на ООП е наследяването. Целта на Inheritance е да увеличи повторната употреба на кода. Той създава нов клас от свойства и методи на вече съществуващия клас. Съществуващият клас е известен като базов клас, а новият клас се нарича производен клас. Множественото наследяване и многостепенното наследяване са типове наследяване. Тази статия обсъжда разликата между тях. Ключовата разлика между множествено и многостепенно наследяване е, че множественото наследяване е, когато даден клас наследява от много базови класове, докато многостепенното наследяване е, когато клас наследява от производен клас, което прави този производен клас основен клас за нов клас.

Какво е множествено наследяване?

Множественото наследяване е, когато един клас наследява повече от един базов клас.

Разлика между множествено и многостепенно наследяване
Разлика между множествено и многостепенно наследяване

Фигура 01: Множествено наследяване

A B и C са класове. A и B са базови класове, а C е производният клас. Класът C трябва да управлява зависимостта на двата основни класа A и B. Множественото наследяване не се използва широко в софтуерни проекти. Това прави системата по-сложна, защото един клас наследява много класове.

Например, приемете, че и клас A, и B имат метод с едно и също име, което е sum(), а клас C извлича и двата класа. След създаване на обект от тип C и извикване на метод sum (), това може да причини грешка, тъй като и двата класа имат един и същ метод. Компилаторът не знае коя функция да извика. Следователно множественото наследяване увеличава сложността на системата. Множественото наследяване се поддържа в езика C++, но езици като Java, C не поддържат множествено наследяване. Вместо това тези езици използват интерфейс, който е подобен на клас, но не може да бъде създаден.

Какво е многостепенно наследяване?

Многостепенно наследяване е, когато клас наследява от производен клас, което прави този производен клас основен клас за нов клас.

Ключова разлика между множествено и многостепенно наследяване
Ключова разлика между множествено и многостепенно наследяване

Фигура 02: Многостепенно наследяване

Многостепенното наследяване има три нива. Междинният клас, който B наследява от клас A, а клас C наследява от клас B. A е базовият клас за B, а B е базовият клас за C.

Програма, която прилага многостепенно наследяване, е както следва. Програмата е написана с помощта на Java.

Разлика между множествено и многостепенно наследяване_Фигура 03
Разлика между множествено и многостепенно наследяване_Фигура 03

Фигура 03: Програма, която прилага многостепенно наследяване

Съгласно горната програма, клас A е базовият клас за клас B. Клас B е базовият клас за клас C. Всички свойства и методи на клас A са достъпни от клас B. Всички свойства и методи на класа B е достъпен от клас C. Следователно клас C има достъп до свойства и методи на A и B. Когато създавате обект от тип C, е възможно да извикате и трите метода A (), B () и C (). Резултатът ще даде A, B, C.

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

И двата вида са видове наследство

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

Многократно наследяване срещу многостепенно наследяване

Множественото наследяване е тип наследяване, при което даден клас наследява от повече от един базов клас. Многостепенното наследяване е тип наследяване, което наследява от производен клас, което прави този производен клас базов клас за нов клас.
Използване
Множественото наследяване не се използва широко, защото прави системата по-сложна. Многостепенното наследяване се използва широко.
Нива на класа
Множественото наследяване има две нива на клас, а именно базов клас и производен клас. Многостепенното наследяване има три нива на клас, а именно базов клас, междинен клас и производен клас.

Резюме – множествено срещу многостепенно наследяване

Наследяването е основен стълб на обектно-ориентираното програмиране. Има различни видове наследство; те са наследяване на едно ниво, наследяване на много нива, множествено наследяване, йерархично наследяване и хибридно наследяване. Наследяването на едно ниво има един базов клас и един производен клас. Йерархичното наследяване има един базов клас и много производни класове. Хибридното наследяване е комбинация от многостепенно и множествено наследяване. Тази статия описва разликата между множествено наследяване и многостепенно наследяване. Разликата между множествените и многостепенните наследства е, че множественото наследяване е, когато даден клас наследява от много базови класове, докато многостепенното наследяване е, когато клас наследява от производен клас, което прави този производен клас основен клас за нов клас. Многостепенното наследяване е широко използвано от множественото наследяване.

Изтеглете PDF Multiple vs Multilevel Inheritance

Можете да изтеглите PDF версия на тази статия и да я използвате за офлайн цели според бележката за цитиране. Моля, изтеглете PDF версия тук Разлика между множествено и многостепенно наследяване

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