Sobes.tech
Back to questions
Junior — Middle
55

Можете объяснить, что подразумевается под интерфейсом в объектно-ориентированном программировании?

Companies where asked
АО К-Технологии

Answer from AI

sobes.tech AI

В объектно-ориентированном программировании интерфейс — это набор методов, которые класс должен реализовать, определяющий, как объекты взаимодействуют друг с другом. Интерфейс задаёт контракт без реализации, позволяя разным классам иметь общий способ взаимодействия.

В Python интерфейсы можно реализовать через абстрактные базовые классы (ABC):

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 задаёт интерфейс, а Dog и Cat реализуют его по-своему.