Зачем нужна инкапсуляция
Python
Middle
Без компании
Зачем нужна инкапсуляция
Ответы
Инкапсуляция — это принцип ООП, который объединяет данные и методы работы с ними в одном классе, скрывая внутреннюю реализацию от внешнего мира.
**Основные цели:**
- **Защита данных** — предотвращение прямого доступа к полям класса.
- **Упрощение кода** — скрытие сложной логики за простым интерфейсом.
- **Гибкость изменений** — можно менять внутреннюю реализацию, не ломая внешний код.
**Пример:**
```
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(1000)
account.deposit(500)
print(account.get_balance()) # 1500
# account.__balance = 0 # Ошибка: атрибут недоступен
```
Используя инкапсуляцию, мы контролируем, как данные изменяются и защищаем их от некорректных операций.