Методы экземпляра: принимают параметр self
и относятся к определенному экземпляру класса.
Методы класса: принимают параметр cls
, можно изменить сам класс.
Статические методы: используют декоратор @staticmethod
, не связаны с конкретным экземпляром и являются автономными (атрибуты класса или экземпляра не изменяются).
Методы экземпляра работают с конкретными экземплярами класса и имеют доступ к данным, связанным с этими экземплярами, методы класса работают с классом в целом и имеют доступ к информации о классе, а статические методы не работают с каким-либо конкретным экземпляром класса. class и не имеют доступа ни к каким данным класса или экземпляра.