Встречается на 1% собеседований по Python
Зачем нужна инкапсуляцию
Инкапсуляция в Python позволяет скрыть внутреннюю реализацию класса, предоставляя доступ только к необходимым методам и атрибутам. Это помогает:
- Защитить данные от нежелательных изменений
- Упростить использование класса (пользователь работает только с публичным интерфейсом)
- Облегчить поддержку кода (можно менять внутреннюю реализацию, не ломая внешний код)
Пример:
python
class BankAccount:
def __init__(self, balance):
self._balance = balance # защищенный атрибут
def deposit(self, amount):
if amount > 0:
self._balance += amount
def get_balance(self):
return self._balance
account = BankAccount(100)
account.deposit(50)
print(account.get_balance()) # 150
# account._balance = -100 # возможно, но не рекомендуетсяВ Python инкапсуляция реализуется через соглашения:
_var- защищенный атрибут (доступ есть, но это "неприлично")__var- приватный атрибут (Python делает name mangling)- Без подчеркиваний - публичный интерфейс

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