Встречается на 1% собеседований по Python
Какие знаешь требования в полиморфизме
Полиморфизм в Python реализуется через:
- Утиную типизацию - объекты должны поддерживать нужные методы/атрибуты, а не наследоваться от конкретного класса.
python
class Dog:
def speak(self):
return "Woof!"
class Cat:
def speak(self):
return "Meow!"
def animal_sound(animal):
print(animal.speak())- Переопределение методов - дочерние классы могут изменять поведение родительских методов.
python
class Bird:
def fly(self):
print("Flying")
class Penguin(Bird):
def fly(self):
print("Can't fly")
text
3. **Перегрузка операторов** - определение магических методов (`__add__`, `__str__` и т.д.).
```python
class Vector:
def __init__(self, x, y):
self.x = x
self.y = y
def __add__(self, other):
return Vector(self.x + other.x, self.y + other.y)- Интерфейсы (ABC) - через
abc.ABCи@abstractmethodможно задать обязательные методы.
python
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
pass
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы