Что такое полиморфизм

Python Middle Без компании
Что такое полиморфизм
Ответы
**Полиморфизм** — это возможность объектов с одинаковой **спецификацией** (интерфейсом) иметь разную **реализацию**. Проще говоря, это когда одна и та же операция может выполняться по-разному в зависимости от типа объекта, который ее выполняет. *Пример:* ``` class Animal: def make_sound(self): pass class Dog(Animal): def make_sound(self): # Переопределение метода print("Woof!") class Cat(Animal): def make_sound(self): # Переопределение метода print("Meow!") def animal_sound(animal: Animal): # Функция ожидает объект базового типа animal.make_sound() # Но вызовется реализация конкретного класса animal_sound(Dog()) # Woof! animal_sound(Cat()) # Meow! ```