Изучите наследование в Python на примерах

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

Что такое наследование?

Наследование относится к процессу передачи ошибок редкого класса в защитный класс. Это ТЯЖЕЛАЯ идея. Ниже приведены некоторые преимущества наследования.

  1. Возможность повторного использования кода — вместо того, чтобы писать один и тот же код снова и снова, мы можем просто наследовать свойства, которые нам нужны в дочернем классе.
  2. Он описывает реальные отношения между родительским и дочерним классами.
  3. Оно имеет переходный характер. Если дочерний класс наследует свойства родительского класса, то все подклассы дочернего класса также унаследуют свойства родительского класса.

Ниже приведен простой пример наследования в Python:

класс Животное(объект):

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

def __init__(я, имя, ноги):

self.name = имя

self.legs = ноги

защита getName (сам):

вернуть свое имя.

защита getLegs (сам):

вернуть себе.ноги

защита isMammal(self):

вернуть ложь

класс Млекопитающих(Животное):

защита isMammal(self):

вернуть истину

годы = Животное(“Ящерица”, 4)

print(ani.getName(), ani.getLegs(), ani.isMammal())

ани = Млекопитающее(“Собака”, 4)

print(ani.getName(), ani.getLegs(), ani.isMammal())

Выход

Ящерица 4 Ложь

Собака 4 Правда

Функцию родительского класса можно оценить с помощью объекта дочернего класса в предыдущей программе.

Подкласс

Подкласс — это процесс вызова функции Object() { (собственный код) } родительского класса путем упоминания имени родительского класса в объявлении дочернего класса. Подкласс — это то, как дочерний класс идентифицирует свой родительский класс.

функция инициализации

Каждый раз, когда класс используется для создания объекта, вызывается функция __init__(). Когда мы добавляем функцию __init__() в родительский класс, дочерний класс больше не сможет наследовать функцию __init__() от родительского класса. Функция __init__() дочернего класса переопределяет функцию __init__() родительского класса.

класс Животное:

def __init__(сам, звук):

self.sound = звук

защита Animal_sound (сам):

print('Звук животного ', self.sound)

p = Животное («Лук-Лук»)

p.animal_sound()

Выход

Звук животного — лук-лук.

Виды наследования

В Python существует четыре типа наследования в зависимости от количества задействованных дочерних и родительских классов.

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

Когда только один родительский класс наследуется дочерним классом.

класс Животное:

Защитная функция1 (сам):

print(“Функция находится в родительском классе.”)

класс Собака(Животное):

Защитная функция2 (сам):

print(“Функция находится в дочернем классе.”)

объект = Собака()

объект.функция1()

объект.функция2()

Выход:

Функция находится в родительском классе.

Функция находится в дочернем классе.

Множественное наследование

Когда класс щита наследуется от нескольких редких классов.

класс Мобильный_Телефон:

mobile_name = “”

защита mobile_phone (сам):

печать (self.mobile_name)

класс ПК:

имя_компьютера = “”

защита ПК (сам):

печать (self.pc_name)

класс Планшет(Мобильный_Телефон, ПК):

функции защиты (собственные):

print(“Набор функций 1:”, self.mobile_name)

print(“Набор функций 2:”, self.pc_name)

f1 = Таблетка()

f1.mobile_name = “Samsung Note 7”

f1.pc_name = “ASUS Vivobook 3”

f1.features()

Выход:

Набор функций 1: Samsung Note 7

Набор функций 2: ASUS Vivobook 3

Многоуровневое наследование

Когда один дочерний класс берет на себя роль родительского класса для другого дочернего класса.

класс Старый_Компьютер:

def __init__(self, old_computername):

self.old_computername = старое_имя_компьютера

класс Retro_Computer(Old_Computer):

def __init__(self, Retro_computername, old_computername):

self.retro_computername = ретро_имя_компьютера

Old_Computer.__init__(self, имя_старого_компьютера)

класс New_Computer(Ретро_Компьютер):

def __init__(self, новое_имя_компьютера, ретро_имя_компьютера, старое_имя_компьютера):

self.new_computername = новое_имя_компьютера

Retro_Computer.__init__(self, ретро_имя_компьютера, старое_имя_компьютера)

защита display_name(self):

print('Старое имя компьютера:', self.old_computername)

print(“Имя ретро-компьютера:”, self.retro_computername)

print(“Новое имя компьютера:”, self.new_computername)

n1 = New_Computer('Машина Тьюринга', 'Мачинтош', 'HP Pavilion')

печать (n1.old_computername)

n1.display_name()

Выход:

Павильон HP

Старое имя компьютера: HP Pavilion.

Имя ретро-компьютера: Macintosh

Имя нового компьютера: Машина Тьюринга.

Hierаrсhiсаl Inheritаnсe

Множественное наследование от одного и того же базового или редкого класса называется иерархическим наследованием.

класс Животное:

Защитная функция1 (сам):

print(“Функция находится в родительском классе.”)

класс Собака(Животное):

Защитная функция2 (сам):

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий