关于重载__init__方法:。

来源:11-2 多线程编程 - threading

qq_拱手河山讨欢_0

2019-04-01

图片描述
1.我们平时写一个没有继承的类,需要一些公共变量,可以直接像图中Spp1这么去定义。 但是如果继承了父类,在这么定义就会报错(如图中Spp2),所以只能去调用父类的__init__方法(如图Spp3)。
2.如果继承了父类,在类中定义了父类的同名函数,就相当于重载了父类的方法,父类的方法就失效了。但是为什么__init__这个不能重载那?

3.不知道我问题1理解的对吗? 问题2希望老师解答。

写回答

2回答

bobby

2019-04-03

init方法会被cpython特殊处理

0
0

Lewin303

2019-04-02

__init__方法也是可以重载的,至于报错,有可能是由于重载后,有些属性在别的方法中有调用,导致抛出异常。

0
0

Python3高级核心技术97讲,高级进阶的必学课程

socket编程/多线程/多进程/线程池/asyncio并发编程/协程和异步IO

2121 学习 · 551 问题

查看课程