Объектно-ориентированное программирование на Python: руководство для начинающих

ООП — это парадигма программирования, которая представляет объекты реального мира классами и объектами. В ООП все является объектом, а объекты связаны друг с другом посредством наследования и полиморфизма.

Классы

Класс — это схема для создания объектов. Он определяет свойства и поведение объекта. Например, класс с именем Dog может определять свойства name и breed, а также поведение bark().

Объекты

Объект является экземпляром класса. Он имеет свойства и поведение, определенные в классе. Например, объект my_dog является экземпляром класса Dog. У него есть свойства name и breed, и он может лаять.

Наследование

Наследование — это способность одного класса наследовать свойства и поведение другого класса. Например, класс GoldenRetriever может наследоваться от класса Dog. Это означает, что объекты GoldenRetriever будут иметь все свойства и поведение объектов Dog, а также любые дополнительные свойства и поведения, определенные в классе GoldenRetriever.

Полиморфизм

Полиморфизм — это способность объектов вести себя по-разному в зависимости от их типа. Например, метод bark() может иметь разное поведение для объектов Dog и объектов GoldenRetriever.

Вот пример объектно-ориентированного программирования на Python:

Питон

class Dog:
    def __init__(self, name, breed):
        self.name = name
        self.breed = breed
    def bark(self):
        print("Woof!")

class GoldenRetriever(Dog):
    def fetch(self, ball):
        print("Fetching the ball!")

my_dog = Dog("Spot", "Golden Retriever")
my_dog.bark()
my_golden_retriever = GoldenRetriever("Buddy", "Golden Retriever")
my_golden_retriever.bark()
my_golden_retriever.fetch(ball)

সাবধানতার সাথে কোড ব্যবহার করুন। আরও জানুন

В этом примере мы определяем два класса: Dog и GoldenRetriever. Класс Dog определяет свойства name и breed, а также поведение bark(). Класс GoldenRetriever наследуется от класса Dog и добавляет поведение fetch().

Затем мы создаем два объекта: my_dog и my_golden_retriever. my_dog — это экземпляр класса Dog, а my_golden_retriever — экземпляр класса GoldenRetriever.

Мы видим, что метод bark() имеет разное поведение для my_dog и my_golden_retriever. Это связано с тем, что my_dog является экземпляром класса Dog, а my_golden_retriever — экземпляром класса GoldenRetriever.