|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
class A():
def __init__(self):
print("进入A…")
print("离开A…")
class B(A):
def __init__(self):
print("进入B…")
super().__init__()
print("离开B…")
class C(A):
def __init__(self):
print("进入C…")
super().__init__()
print("离开C…")
class D(B, C):
def __init__(self):
print("进入D…")
super().__init__()
print("离开D…")
视频里这段代码是正确的代码。实例化D后运行。首先打印‘进入D。。’,然后找父类B中的__init__打印‘’进入B。。’,这个时候执行到B下面的super().__init__了应该去答应进入A了呀。应该还是会有两次初始化A。为什么就只有一次了呢?
super()函数能够防止多重继承,它确保继承多个父类时,同一个父类只被执行一次。
|
|