类的私有属性
__private_attrs:两个下划线开头,声明该属性为私有,不能在类地外部被使用或直接访问。在类内部的方法中使用时self.__private_attrs。
类的私有方法
__private_method:两个下划线开头,声明该方法为私有方法,不能在类地外部调用。在类的内部调用self.__private_methods
注:def定义类方法,第一个参数必须为Self。
示例:
class MyCounter(object):
__secretCount = 0 #定义私有变量
publicCount = 0 #定义公开变量
def count(self): #定义成员函数
self.__secretCount+=1
self.publicCount+=1
print self.__secretCount
n=MyCounter()#创建对象n
n.count()#调用成员方法
print n.publicCount
#print n.__secretCount #报错(Python不允许实例化的类访问私有数据)
print n._MyCounter__secretCount #访问私有变量
注意: Python不允许实例化的类访问私有数据。
运行结果如下:
image.png
网友评论