
Python中的super().__init__()
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
在Python类继承中,`super().__init__()`用于调用父类(基类)的初始化方法。它简化了代码结构,并支持多继承模式下的MRO(方法解析顺序)。
在子类构造函数调用 `super().__init__()` 的情况下:
1. 第一个直接继承父类的实例可以访问到 `name` 属性。
2. 第二个从父类继承,但覆盖了初始化方法并增加了新的属性如 `age`,此时不能直接使用或访问原来的 `name` 属性。
3. 第三个同样是从父类继承,并且重写了初始函数以保留对名称(即 `name`)的调用。
此外,在讨论 Python 2 和 Python 3 的区别时需要注意的是:
1. 在子类构造中,Python 3 使用了更简洁和直观的方式来实现多态性通过使用 `super()`。
2. 继承顺序在两种版本中的处理方式有所不同。Python 3 中的多重继承更加灵活,并且推荐使用 MRO(Method Resolution Order)来解决方法解析问题。
关于 `super().init()`: 这里可能存在一个拼写错误,正确的应该是 `super().__init__()` 而不是 `super().init()` 。
全部评论 (0)
还没有任何评论哟~


