python中private、protected&public
private:
1.在类中的属性或者方法前加上两条下划线“__”,该属性或方法就变成了私有的了,只能在类内访问。
2.如果想从外部访问私有属性或者方法(不建议访问),有两种方法,一是定义一个函数进行访问,二是对私有的属性或者方法的名字进行转换为:一个下划线“_”+类名+私有属性或者方法的名字。
protected:
1.在类中的属性或者方法前加上单下划线“_”,该属性或者方法就变成protected, 只能类内访问或者子类访问
public:
1.没有下划线的是public, 可以类外、类内、子类访问
点击查看代码
class A:
def __init__(self):
# public 子类可以调用父类的public方法或成员,实例化后可以使用public的方法或成员
self.x=0
"""
它不能显式的被外界调用
"""
# protected 虽然保护,但外界依旧可以访问 子类可以调用父类的protected方法或成员,(类实例化后不可以调用protected方法或成员)
self._x=1
# private只有该类自己可以调用,实例化后和子类继承都无法调用
self.__x=2
class B(A):
def __init__(self):
super().__init__()
print(f"x:{self.x}")
if __name__ == '__main__':
b=B()
# print(A.x)
print("Hello World!")