@Nahs

Как правильно инкапсюлировать методы в классе?

Как правильнее будет в Python3 написать класс?
class Classname():
  • Вопрос задан
  • 183 просмотра
Решения вопроса 1
@nirvimel
https://www.python.org/dev/peps/pep-0008/#method-n...

class ClassName(object):
    def public_method(self):
        pass

    def _protected_method(self):
        pass

    def __private_method(self):
        pass
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
s0ci0pat
@s0ci0pat
I'm Awesome
Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.

Одиночное подчеркивание в начале имени атрибута говорит о том, что переменная или метод не предназначен для использования вне методов класса, однако атрибут доступен по этому имени.

Двойное подчеркивание в начале имени атрибута даёт большую защиту: атрибут становится недоступным по этому имени.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы