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

1.实例方法
实例方法只能通过实例调用,实例方法第一个定义的参数只能是实例本身的引用
实例:
class myclass():
def foo(self):
print(id(“你好”)
a = myclass()#创建实例
a.foo() #实例调用
#myclass().foo() 这是错误调用方法。
结果:
你好
———————————————–
self指的是类实例对象本身(注意:不是类本身),在python中self不是关键词,你可以定义成a或b或其它名字都可以

id()函数是一个对象的id值在内存中的地址


2.类方法:
定义类方法要使用装饰器 @classmethod ,定义的第一个参数只能是类对象的引用,可以通过类或者实例直接调用
实例:

class myclass():
def foo(cls):
print(id(cls))
@classmethod
def foo2(cls):
print(“你好”)
a = myclass()#创建实例
print(“类方法————–”)#调用类方法
a.foo2() #实例调用
myclass.foo2() #类调用
结果:
你好
你好


3.静态方法
定义静态方法要使用@staticmethod,没有默认的必须参数,可以通过类或实例调用

实例:

class MyClass():
@staticmethod
def statisfun():
print(“你好”)
m=MyClass()
m.statisfun() #实例调用
MyClass.statisfun() #类调用

结果为:
你好
你好
——————

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值