Python 实例方法类方法静态方法的区别与作用
Posted pfeiliu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 实例方法类方法静态方法的区别与作用相关的知识,希望对你有一定的参考价值。
Python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?
首先,这三种方法都定义在类中。下面先简单说一下怎么定义和调用的。
实例方法
定义:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传类的属性和方法);
调用:只能由实例对象调用。
类方法
定义:使用装饰器@classmethod。第一个参数必须是当前类对象,该参数名一般约定为“cls”,通过它来传递类的属性和方法(不能传实例的属性和方法);
调用:实例对象和类对象都可以调用。
静态方法
定义:使用装饰器@staticmethod。参数随意,没有“self”和“cls”参数,但是方法体中不能使用类或实例的任何属性和方法;
调用:实例对象和类对象都可以调用。
以上是关于Python 实例方法类方法静态方法的区别与作用的主要内容,如果未能解决你的问题,请参考以下文章
Python:类属性,实例属性,私有属性与静态方法,类方法,实例方法
python笔记60 - 类里面静态方法(@staticmethod),类方法(@classmethod)和实例方法(self)的使用与区别