python3种方式定义类方法

python3种方式定义类方法

  1.     常规方法:通过self参数隐式的传递当前类对象的实例。需要实例化之后才能调用
  2.     @classmethod修饰:通过cls参数传递当前类对象。直接类对象调用【类方法.方法名】/实例化后调用均可
  3.     @staticmethod修饰:和普通函数一样。直接类对象调用【类方法.方法名】/实例化后调用

    self和cls不是强制的。只是PEP8的一种编程风格。self通常作为实例方法的第一参数,cls通常作为类方法的第一参数。即self传递当前类对象的实例,cls传递当前类对象

使用@staticmethod @classmethod方法,有利于组织代码,把某些应该属于某个类的函数给放到那个类里去,同时有利于命名空间的整洁。

在Python中类和实例都是对象,都占用了内存空间,合理的使用@staticmethod @classmethod方法,就可以不用实例化就直接使用类的方法

参考:https://blog.csdn.net/weixin_41010198/article/details/84828022

猜你喜欢

转载自blog.csdn.net/qq_24166417/article/details/106489386
今日推荐