Что такое модификатор доступа
Python
Middle
Без компании
Что такое модификатор доступа
Ответы
В Python модификаторы доступа определяют видимость атрибутов и методов класса. Основные виды:
- **Public** (публичный) – доступен везде. По умолчанию все атрибуты и методы публичные.
```
class Example:
def __init__(self):
self.public_attr = 10 # Публичный атрибут
```
- **Protected** (защищённый) – условно обозначается одним подчёркиванием `_`. Не блокирует доступ, но сигнализирует, что атрибут/метод предназначен для внутреннего использования.
```
class Example:
def __init__(self):
self._protected_attr = 20 # Защищённый атрибут
```
- **Private** (приватный) – обозначается двойным подчёркиванием `__`. Доступен только внутри класса (Python делает name mangling, добавляя `_ИмяКласса`).
```
class Example:
def __init__(self):
self.__private_attr = 30 # Приватный атрибут
```
Важно: Python не запрещает доступ к защищённым/приватным членам, но это нарушает инкапсуляцию.