Инкапсуляция — ограничение доступа к составляющим объект компонентам (методам и переменным)
- Инкапсуляция делает некоторые из компонент доступными только внутри класса.
- Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.
- Одиночное подчеркивание в начале имени атрибута говорит о том, что переменная или метод не предназначен для использования вне методов класса, однако атрибут доступен по этому имени.
class A:
def _protect(self):
print("Это проектед метод!")
- Двойное подчеркивание в начале имени атрибута даёт большую защиту: атрибут становится недоступным по этому имени.
class B:
def __private(self):
print("Это приватный метод!")