Создание класса Sentinel
В этом шаге вы начнете свое путешествие, создав класс, представляющий призрачного охранителя, что будет вашим первым столкновением с инкапсуляцией в Python. Этот охранитель хранит секретное сообщение, которое можно получить только с помощью определенного метода, демонстрируя силу приватных атрибутов. Вы создадите класс Sentinel
с приватными атрибутами и методами, чтобы защитить его секреты.
Теперь откройте ~/project/sentinel.py
в своем любимом текстовом редакторе и добавьте следующий код:
class Sentinel:
def __init__(self):
self.__message = 'The key to encapsulation lies within the walls.'
def reveal_message(self):
return self.__message
guardian = Sentinel()
print(guardian.reveal_message())
В этом коде __message
- это приватный атрибут, обозначенный двумя нижними подчеркиваниями, что означает, что он доступен только внутри класса. Метод reveal_message
предоставляет контролируемый доступ к атрибуту __message
.
Попробуйте запустить код:
python sentinel.py
Вы должны увидеть напечатанное секретное сообщение охранителя:
The key to encapsulation lies within the walls.