Junior — Middle
85
Da li imate iskustva u korišćenju apstraktnih klasa u vašim projektima?
Компаније где су питане
ООО Корпорация ЗНАК
Одговор од АИ
sobes.tech АИ
Да, в проектах на Python я использовал абстрактные классы для определения базового интерфейса и общей логики, которую должны реализовать подклассы. Это помогает обеспечить единообразие и избежать дублирования кода.
В Python абстрактные классы создаются с помощью модуля abc и декоратора @abstractmethod.
Пример:
from abc import ABC, abstractmethod
class Animal(ABC):
@abstractmethod
def make_sound(self):
pass
class Dog(Animal):
def make_sound(self):
return "Гав"
class Cat(Animal):
def make_sound(self):
return "Мяу"
# animal = Animal() # Ошибка, нельзя создать экземпляр абстрактного класса
dog = Dog()
print(dog.make_sound()) # Выведет: Гав
Такой подход помогает гарантировать, что все подклассы реализуют необходимые методы.