Python 实例方法类方法静态方法的区别与作用

Posted pfeiliu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 实例方法类方法静态方法的区别与作用相关的知识,希望对你有一定的参考价值。

Python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?

首先,这三种方法都定义在类中。下面先简单说一下怎么定义和调用的。

实例方法

    定义:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传类的属性和方法);

    调用:只能由实例对象调用。

类方法

    定义:使用装饰器@classmethod。第一个参数必须是当前类对象,该参数名一般约定为“cls”,通过它来传递类的属性和方法(不能传实例的属性和方法);

    调用:实例对象和类对象都可以调用。

静态方法

    定义:使用装饰器@staticmethod。参数随意,没有“self”和“cls”参数,但是方法体中不能使用类或实例的任何属性和方法;

    调用:实例对象和类对象都可以调用。

以上是关于Python 实例方法类方法静态方法的区别与作用的主要内容,如果未能解决你的问题,请参考以下文章

Python:类属性,实例属性,私有属性与静态方法,类方法,实例方法

三.python高级

Python中静态方法和类方法的区别

Python中静态方法和类方法的区别

python笔记60 - 类里面静态方法(@staticmethod),类方法(@classmethod)和实例方法(self)的使用与区别

python 为啥要使用静态方法