更新时间:2020-09-11 来源:黑马程序员 浏览量:
实例属性即同一个类的不同实例,其值是互不关联的,也不会互相影响的,定义时使用“self.属性名”,调用时也使用“self.属性名”。
类属性则是同一个类的所有实例所共有的,直接在类体中独立定义,引用时要使用“类名.类变量名”形式来引用,只要是某个实例对其进行修改,就会影响其他的所有这个类的实例。
简单的说,Python中类属性就是给类对象中定义的属性,通常用来记录与这个类相关的特征。注意:类属性不会用于记录具体对象的特征。
下面通过案例演示:
案例需求:
·定义一个工具类
·每件工具都有自己的name
·需求 —— 知道使用这个类,创建了多少个工具对象?
class Tool(object): # 使用赋值语句,定义类属性,记录创建工具对象的总数 count = 0 def __init__(self, name): self.name = name # 针对类属性做一个计数+1 Tool.count += 1 # 创建工具对象 tool1 = Tool("斧头") tool2 = Tool("榔头") tool3 = Tool("铁锹") # 知道使用 Tool 类到底创建了多少个对象? print("现在创建了 %d 个工具" % Tool.count)
以上我们介绍了,什么是Python中的类属性和实例属性。简单的说,类属性就是给类对象中定义的属性,通常用来记录与这个类相关的特征,而实例属性同一个类下面具体实例的属性,实例属性的值和同类下其他实例的属性值互不关联。
猜你喜欢: