Как называется механизм, который скрывает приватное
Python
Senior
Без компании
Как называется механизм, который скрывает приватное
Ответы
Это называется **инкапсуляция** — принцип ООП, ограничивающий доступ к внутренним данным класса, защищая их от несанкционированного изменения. В Python инкапсуляция реализуется через соглашение об именовании:
- `_variable` — "protected" (условно приватное, доступ есть, но считается internal use)
- `__variable` — "private" (искажение имени, превращается в `_ClassName__variable`)
Пример:
```
class BankAccount:
def __init__(self, balance):
self.__balance = balance # Приватный атрибут
def get_balance(self):
return self.__balance
account = BankAccount(1000)
print(account.get_balance()) # 1000
print(account.__balance) # Ошибка: AttributeError
```
Важно: Python не блокирует доступ жестко, но соглашения и механизм name mangling (`__var`) помогают избежать случайных изменений.