Junior — Middle
Quali conoscenze ed esperienze di programmazione orientata agli oggetti in Python puoi dimostrare?
sobes.tech AI
Risposta dell'AI
В Python объектно-ориентированное программирование (ООП) реализуется через классы и объекты. Я умею создавать классы с атрибутами и методами, использовать наследование для расширения функционала, применять инкапсуляцию через приватные и защищённые атрибуты, а также полиморфизм для переопределения методов.
Пример класса с наследованием и переопределением метода:
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
return "..."
class Dog(Animal):
def speak(self):
return "Гав!"
dog = Dog("Шарик")
print(dog.name) # Шарик
print(dog.speak()) # Гав!
Также я знаком с такими концепциями, как абстрактные классы (через модуль abc), свойства (property) для управления доступом к атрибутам, и понимаю, как использовать композицию и агрегацию для построения сложных объектов.