Исследование наследования классов
На этом этапе вы узнаете о наследовании классов, фундаментальном концепте объектно-ориентированного программирования (ООП). Наследование позволяет создавать новые классы (дочерние классы), которые наследуют атрибуты и методы от существующих классов (родительских классов). Это способствует повторному использованию кода и помогает создавать более организованный и поддерживаемый код.
Начнем с создания простого родительского класса под названием Animal
:
## Create a file named animal.py in the ~/project directory
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print("Generic animal sound")
Откройте редактор VS Code и создайте новый файл с именем animal.py
в директории ~/project
. Скопируйте и вставьте приведенный выше код в файл. Этот класс имеет метод __init__
(конструктор), который инициализирует атрибут name
, и метод speak
, который выводит общее звук животного.
Теперь создадим дочерний класс Dog
, который наследуется от класса Animal
:
## Add the following code to animal.py
class Dog(Animal):
def speak(self):
print("Woof!")
Добавьте приведенный выше код в файл animal.py
. Класс Dog
наследуется от Animal
, указав Animal
в скобках после имени класса. Класс Dog
также переопределяет метод speak
, чтобы предоставить свою собственную конкретную реализацию.
Далее создадим еще один дочерний класс Cat
, который также наследуется от класса Animal
:
## Add the following code to animal.py
class Cat(Animal):
def speak(self):
print("Meow!")
Добавьте приведенный выше код в файл animal.py
. Класс Cat
также наследуется от Animal
и переопределяет метод speak
.
Теперь создадим основную программу для использования этих классов:
## Create a file named main.py in the ~/project directory
from animal import Animal, Dog, Cat
animal = Animal("Generic Animal")
dog = Dog("Buddy")
cat = Cat("Whiskers")
animal.speak()
dog.speak()
cat.speak()
Создайте новый файл с именем main.py
в директории ~/project
и скопируйте и вставьте приведенный выше код в файл. Эта программа импортирует классы Animal
, Dog
и Cat
из файла animal.py
. Затем она создает экземпляры каждого класса и вызывает их методы speak
.
Чтобы запустить программу, откройте терминал в VS Code и перейдите в директорию ~/project
:
cd ~/project
Затем выполните скрипт main.py
с помощью команды python:
python main.py
Вы должны увидеть следующий вывод:
Generic animal sound
Woof!
Meow!
Это демонстрирует, как классы Dog
и Cat
наследуются от класса Animal
и предоставляют свои собственные конкретные реализации метода speak
. Это простой пример наследования классов в Python.