仅用学习参考 01. 应用场景及定义方式 应用场景 在实际开发中,对象的某些属性或方法可能只希望在对象的内部被使用,而不希望在外部被访问到 私有属性就是对象不希望公开的属性
仅用学习参考
01. 应用场景及定义方式
应用场景
- 在实际开发中,对象的某些属性或方法可能只希望在对象的内部被使用,而不希望在外部被访问到
- 私有属性就是对象不希望公开的属性
- 私有方法就是对象不希望公开的方法
定义方式
- 在定义属性或方法时,在属性名或者方法名前增加两个下划线,定义的就是私有属性或方法
__secret(self)
def __secret(self):
print("这是一个不能说的秘密")
def printMySecret(self):
self.__secret()
if __name__ == '__main__':
libai = DeadFatBoy("李白","75")
libai.printMySecret()
执行如下:
G:\Python27\python.exe F:/pythonProject/CigarettesSystem/DeadFatBoy.py这是一个不能说的秘密
其中__secret这个私有方法只能在类中调用,所以外部对象实例想要获取私有方法或者私有属性,那么就需要定义一个公有的方法来传递数值。
02. 伪私有属性和私有方法(科普)
Python 中,并没有 真正意义 的 私有
- 在给属性、方法命名时,实际是对名称做了一些特殊处理,使得外界无法访问到
- 处理方式:在名称前面加上_类名 =>_类名__名称
print(xiaofang._Women__age)
# 私有方法,外部不能直接调用
xiaofang._Women__secret()
关注微信公众号,回复【资料】、Python、PHP、JAVA、web,则可获得Python、PHP、JAVA、前端等视频资料。