Встречается на 3% собеседований по Python
Как реализованы основные принципы ООП в Python
Python поддерживает 4 основных принципа ООП:
Инкапсуляция - сокрытие внутренней реализации. В Python нет строгой инкапсуляции, но соглашение:
- Публичные атрибуты:
name - Защищённые (условно приватные):
_name - Приватные (name mangling):
__name
python
class Person:
def __init__(self, name):
self.__name = name # приватный
def get_name(self): # публичный интерфейс
return self.__nameНаследование - создание дочерних классов:
python
class Animal:
def make_sound(self):
pass
class Dog(Animal):
def make_sound(self):
return "Woof!"Полиморфизм - один интерфейс для разных типов:
python
def animal_sound(animal: Animal):
print(animal.make_sound())
dog = Dog()
animal_sound(dog) # Woof!Абстракция - выделение общего интерфейса (в Python через ABC):
python
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
passPython также поддерживает множественное наследование, миксины и другие продвинутые возможности ООП.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы