实例属性:使用object.name='tom'这样绑定的属性
类属性:在类里面直接定义的属性,name=tom,类似与Java里面的static变量
class Student(object):
name = "Student"
age = 13
count=0
def __init__(self,name):
Student.count+=1
self.name=name
student = Student("jack")
#实例属性不存在会优先找到类属性
print(student.age)
#实例属性存在就找实例属性
print(student.name)
#实例属性与类属性互不干涉
print(Student.name)
#类属性可以更改
Student.name="TOM"
print(Student.name)
#实例属性可以删除
del student.name
#删除后将会自动找到类属性
print(student.name)
#类属性也可以删除(强烈不建议)
del Student.name
#删除后访问报错
#print(Student.name)
print("被实例化次数:",student.count)
student = Student("jack")
print("被实例化次数:",student.count)
student = Student("jack")
print("被实例化次数:",student.count)
student = Student("jack")
print("被实例化次数:",student.count)
C:\Users\Administrator.000\AppData\Local\Programs\Python\Python36\python.exe E:/python/14.实例属性和类属性.py
13
jack
Student
TOM
TOM
被实例化次数: 1
被实例化次数: 2
被实例化次数: 3
被实例化次数: 4
Process finished with exit code 0