python标识静态方法_python类属性 静态方法

实例

实例就是由对象创建出来的实实在在的存在

创建出来的对象叫做类的实例

创建对象的动作叫做实例化

对象的属性叫做实例的属性

对象调用的方法叫做实例方法

类是一个特殊的对象

71A6900A08474190B20A75A05274446C

类属性

类属性就是类对象中定义的属性,通常用来记录与这个类相关的特征,不会记录与对象相关的特征

演练需求:

1.定义一个工具类

2.每件工具都有自己的名称

3.知道使用这个类,创建了多少工具对象

class Tool ( object ):

# 使用赋值语句定义类属性

count = 0

def __init__(self, name):

self.name = name

# 调用类属性的值+1

Tool.count += 1 # 类属性的调用方式:类名.类属性名

# 创建工具对象

t1 = Tool ( "斧头" )

t2 = Tool ( "水桶" )

# 输出工具对象的总数

print ( "工具对象的总数 %d" % Tool.count )

属性获取机制--向上查找机制

1、首先先在对象内部查找

2、没有找到就会向上寻找类属性

类方法

类属性是针对 类对象 定义的属性

使用赋值语句在class 关键字下方可以定义属性

类属性 用于记录与这个类相关的特征

类方法 是针对 类对象 定义的方法

在类方法内部可以直接访问类属性或者调用其它的类方法

语法格式:

@classmethod

def 类方法名( cls ):

pass

注意:

1.类方法需要用 修饰器 @classmethod 来标识,告诉解释器这是一个类方法

2.类方法的第一个参数 应该是 cls ,与实例方法的第一个参数self类似

3.通过类名,调用类方法,调用方法时,不需要传递cls 参数

4.在方法内部:

可以通过cls. 访问类的属性

也可以通过cls. 调用其他的类方法

class Tool(object):

count = 0

def __init__(self, name):

self.name = name

Tool.count += 1

# 类方法

@classmethod

def show_tool_count(cls):

# 访问当前类方法的属性使用cls.

print("工具对象的数量 %d" % cls.count)

tool1 = Tool("斧头")

tool2 = Tool("榔头")

# 调用类方法,使用类名.类方法名()

Tool.show_tool_count()

静态方法

静态方法 需要用 @staticmethod 来标识,告诉解释器这是一个静态方法

参数随意,没有“self”和“cls”参数,但是方法体中不能使用类或实例的任何属性和方法

静态方法主要是用来存放逻辑性的代码

通过类名. 调用静态方法

语法格式:

@staticmethod

def 静态方法名():

pass

演练:

class Dog(object):

@staticmethod

def run():

# 如果这个方法不访问实例属性或者类属性,就可以把方法定义成静态

print("小狗要跑。。。")

# 通过类名.调用静态方法,不需要创建对象

Dog.run()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值