Наследование виды наследования программирование

Наследование в программировании: определение, виды, описание и отличия

Lorem ipsum dolor

Наследование классов в ОО П ( объектно-ориентированном программировании)

  • родительские или базовые классы — это классы , от которых заимствовали характеристики и свойства;
  • потомственные или наследующие классы — это классы, которые получились на основе характеристик родительских классов.
  • простое,
  • множественное.

Простое наследование классов в программировании

Простое наследование еще называет ся одиночным — это наслед ование , при котором создается «родство» между двумя классами. То ест ь о дин класс-потомок перенимает характеристики от одного родительского класса.

Даже если от одного родительского класса будет исходить несколько классов-потомков, это все равно будет прост ым наследование м . Простое наследование поддерживается большинством объектно-ориентированных языков, в отличие от множественного наслед ования .

Множественное наслед ование классов в программировании

Множественное наслед ование классов подразумевает ситуацию, когда один потомственный класс принимает характеристики от нескольких родительских классов. Такой подход помогает реализовывать очень гибкие и настраиваемые классы-потомки.

Его поддерживают не все ОО-языки. Например, множественное наслед ование поддерживают C, C++, Python, Eiffel, UML, но не поддерживают Java и C#. Некоторые языки отказались от множественного наслед ования , потому что оно является источником потенциальных ошибок из-за присутствия одинаковых имен у классов. Поэтому в таких языках было решено уйти от множественного наслед ования и заменить его интерфейсами.

Интерфейс — это подход в программировании, при котором определяются отношения между объектами, связанны ми похожими характеристиками. Такой подход довольно популярен в объектно-ориентированном программировании, так как исключает многие ошибки, возникающие в других подходах.

Читайте также:  Основные свойства структурного программирования

Наследование в программировании: реализация в языках

Давайте посмотрим , как реализуется наследование в некоторых языках программирования.

Наследование классов в С/С++ реализуется по следующему шаблону:

class Q <>; // Родительский класс

class W : public Q <>; // спецификатор Public

class E : protected Q <>; // спецификатор Protected

class R : private Q <>; // спецификатор Private

Как видно, в С/С++ наследование может быть организовано тремя спецификаторами. Данные спецификаторы объявляются в родительском и потомственном классе. Разный спецификатор — разные отношения между этими классами. Данной теме мы посвятим отдельную статью.

Множественное наследование на Python происходит по следующему шаблону:

class FirstParent(object): # первый родительский класс

def m1(self): pass

class SecondParent(object): # второй родительский класс

def m1(self): pass

class Inheritor(FirstParent, SecondParent): # Потомственный класс с двумя родительскими

В PHP реализация наследования происходит по следующему шаблону:

class Inheritor extends Parent

>

Важная особенность в PHP — родительский класс объявляется после потомственного класса, при этом обязательно использовать перед именем родительского класса ключево е слов о «extends».

Заключение

Наследование классов в программировании — это возможность повторно использовать уже написанный код для какого-либо класса. А это существенно экономит время на разработку и отладку программы.

Наследование классов — это процесс , связанный с объектно-ориентированным программированием, однако в разных ОО-языках он реализован по-разному. Например, множественное наследование поддерживают не все объектно-ориентированные языки.

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Источник

Оцените статью