Автор оригинала: Pankaj Kumar.
Привет всем к примеру наследования Python. В нашем последнем руководстве мы узнали о перегрузке оператора Python. В этом уроке мы собираемся обсудить еще одну важную объектно-ориентированную особенность Python, которая наследство.
Наследование питона
В основном, наследование включено практически на все объектно-ориентированные языки программирования. Наследование Python позволяет нам использовать атрибуты участника и методы одного класса в другое.
Паймологии наследования Python
- Суперкласс: Класс, из которого будут унаследоваться атрибуты и методы.
- Подкласс: Класс, который наследует членов из SuperClass.
- Перекрытие метода: Переопределение определений методов в подклассе, уже определенном в суперклассе.
Пример наследования Python
Теперь давайте поработаем с примером наследования Python Inheritance.
#Line:1, definition of the superclass starts here class Person: #initializing the variables name = "" age = 0 #defining constructor def __init__(self, personName, personAge): self.name = personName self.age = personAge #defining class methods def showName(self): print(self.name) def showAge(self): print(self.age) #Line: 19, end of superclass definition #definition of subclass starts here class Student(Person): #Line: 22, Person is the superclass and Student is the subclass studentId = "" def __init__(self, studentName, studentAge, studentId): Person.__init__(self, studentName, studentAge) #Line: 26, Calling the superclass constructor and sending values of attributes. self.studentId = studentId def getId(self): return self.studentId #returns the value of student id #end of subclass definition # Create an object of the superclass person1 = Person("Richard", 23) #Line: 35 #call member methods of the objects person1.showAge() # Create an object of the subclass student1 = Student("Max", 22, "102") #Line: 39 print(student1.getId()) student1.showName() #Line: 41
Теперь мы собираемся объяснить вышеприведенный пример, чтобы понять, как наследование работает в Python.
Определение суперкласса
Линия 1 – 19 определяет суперкласс. У вас не должно быть проблем с пониманием этого, если вы знакомы с классом Python. Класс Человек
определяется с необходимым конструктором, атрибутами и методами. Объяснение этого сегмента уже было предоставлено в Класс Python руководство.
Определение подкласса
Согласно правилу наследования, подкласс наследует атрибуты и методы его суперкласса. Линия 22 показывает, как студент подкласса расширяет человека как его суперкласс. Название суперкласса должно храниться в скобках при объявлении подкласса. И конструктор должен вызвать конструктор SuperClass с соответствующими значениями атрибутов (при необходимости), как показано в строке 26. Помимо этого, все такое же, как определение обычного класса Python.
После определения как суперкласса, так и подкласса, мы можем создавать объекты суперкласса и подкласса, как в строках 35 и 39. Как нам сказали ранее, подкласс наследует атрибуты и методы. Здесь вы можете заметить, что outdent Student1 (объект студенческого подкласса) имеет метод shradeame под его объем (строка 41).
После запуска на Compiler Python код дает следующий выход.
Итак, это был основной наследство питона. Мы узнаем больше о наследстве в раздел «Неужели». Счастливое кодирование и до свидания!
Ссылка: Python.org doc Отказ