|
30鱼币
- 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()后
为什么出现的顺序是:
进入D…
进入B…
进入C…
进入A…
离开A…
离开C…
离开B…
离开D…
在D中调用B和C后为我感觉应该B类执行完再执行C啊。。。。。所以应该是
进入D…
进入B…
进入A…
离开A…
离开B…
进入C…
进入A…
离开A…
离开C...
离开D...
吗?
还有
构造函数__init__怎么去理解?是每一个类中的新方法吗?小甲鱼说:“”实例化方法时,传入参数方法自动调用“”我咋没明白?那这个题目举例子,很多方法中都有 __init__,我怎么判断它自动调用的时那个方法?只是在当前类中调用方法吗?
|
最佳答案
查看完整内容
__init__()方法是个用来初始化的方法,从基类继承而来(object类定义了__init__()方法)。__init__()方法在类对象被实例化的时候自动调用,完成一些初始化的工作。
__init__()方法也可以被显式的重写
|