1.私有属性
私有属性用两个下划线开头,表示这个属性只能在本类中使用
class demo_private:
# 测试一个私有属性
__a = 3
# 测试一个公有属性
b = 4
print(__a)
print(b)
class demo_test:
print(demo_private.b)
print(demo_private.__a)
运行结果为:
3
4
4
AttributeError: type object ‘demo_private’ has no attribute ‘_demo_test__a’
2.私有方法
私有方法两个下划线开头,表示这个方法只能在本类使用
class demo_private:
#测试一个私有方法
def __test_private():
print("这是一个私有方法")
#测试一个公有方法
def test_public():
print("这是一个公有方法")
test_public()
__test_private()
class demo_test:
demo_private.test_public()
demo_private.__test_private()
运行结果为:
这是一个公有方法
这是一个私有方法
这是一个公有方法
AttributeError: type object ‘demo_private’ has no attribute ‘_demo_test__test_private’
3.专有方法
类有一些专有方法,如下:
常用的是构造函数、析构函数等