python之静态方法类方法、实例方法

1、实例化方法:

        1、 该方法一定有参数,一般参数为self,通过它来传实例化对象属性名和属性,该方法只能由实例化对象调用

        2、实例化方法是能够被类对象调用的   单纯的调用会报错

       

         显然,程序会报错,但是我们观察一下报错的信息提示,即:调用的方法中没有给self传参数,slef就是我们对象的引用。

   这个提示告诉了我们,之前在使用实例对象调用实例方法的时候,其实是python自动给self参数进行了传值,而使用Dog.action()的方式,我们只有类对象的引用,缺少实例对象的引用,python不能够实现自动的传递了。

       正确的方式

           

2、类方法:

      使用装饰器进行修饰,即@classmethod,会有参数,第一参数是cls即第一类对象。用来传递类属性和类方法名。实例化对象和类对象都能够直接调用

3、静态方法:

    需要加装饰器,即@staticmethod,方法名当中没有任何参数,方法体当中不允许含有类属性和实例化属性,调用的话实例化对象和类对象都可以

原文地址:https://www.cnblogs.com/bianfuxia/p/15410704.html