Шаг 84.
Python: тонкости программирования. Классы и ООП. Методы экземпляра, класса и статические методы. Методы класса

    На этом шаге мы рассмотрим особенности использования этих методов.

    Давайте сравним это со вторым методом, MyClass.classmethod(). Он помечен декоратором @classmethod, чтобы обозначить его как метод класса.


См. документацию Python "@classmethod": https://docs.python.org/3/library/functions.html#classmethod.

    Вместо параметра self методы класса принимают параметр cls, который указывает на класс, а не на экземпляр объекта во время вызова этого метода.

    Поскольку метод класса имеет доступ только к этому аргументу cls, он не может менять состояние экземпляра объекта. Для этого потребовался бы доступ к параметру self. Однако методы класса по-прежнему могут модифицировать состояние класса, которое применимо во всех экземплярах класса.

    На следующем шаге мы рассмотрим статические методы.




Предыдущий шаг Содержание Следующий шаг