python 类中的单下划线和双下划线的意义
程序员文章站
2023-12-24 19:00:09
...
#"单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量;
#"双下划线" 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。
class Pub(object):
var1 = 'hello'
_var2 = 'yes'
__var3 = 'hah'
def __init__(self):
self._a = 123
self.__b = 456
self.c = 789
def show_a_var(self):
return self._a
def show_b_var(self):
return self.__b
def show_var2(self):
return self._var2
def show_var3(self):
return self.__var3
class Foo(Pub):
pass
print(Pub.var1)
sl = Pub()
print(sl.c)
print(sl.show_a_var())
print(sl.show_b_var())
print(sl.show_var2())
print(sl.show_var3())
fa = Foo()
print(fa._var2)
print(fa.var1)
print(fa.show_a_var())
print(fa.show_var2())
转载于:https://blog.51cto.com/freshair/1930129