property的使用:
私有属性,提供开发接口,供外界进行访问
创建Studen类,给类中self.__age私有属性中提供getAge()和setAge()接口:
class Student():
def __init__(self,name,age):
self.name = name
self.__age = age
def getAge(self):
return self.__age
def setAge(self,age):
if isinstance(age,int):
self.__age = age
else:
raise TypeError("类型错误")
使用getAge()和setAge()方法访问和修改私有属性:
stu1 = Student('张伟',18)
stu1.setAge(17)
print(stu1.getAge())
使用property:
class Student():
def __init__(self,name,age):
self.name = name
self.__age = age
def getAge(self):
return self.__age
def setAge(self,age):
if isinstance(age,int):
self.__age = age
else:
raise TypeError("类型错误")
age = property(getAge,setAge) #加入property
便可以实现如下访问私有属性:
print(stu1.age)
stu1.age = 19
print(stu1.age)