from threading import Thread
class CountdownThread(Thread):
def __init__(self, n):
super(CountdownThread, self).__init__() #在继承Thread时,为什么要执行Thread的构造函数呢?
self.n = 0
def run(self):
while self.n > 0:
print('T-minus', self.n)
self.n -= 1
time.sleep(5)
c = CountdownThread(5)
c.start()
1.在继承Thread时,为什么要执行Tread的构造函数呢?
ps:本人背景自学+google,还请不吝赐教
父類別的建構子有執行緒的初始化工作。
打個比方: 弟子承師業,總不能一上來就搞創新吧?師傅手裡的基本功還是要學的
如果在子類別裡面重寫了建構函數,那麼就會呼叫子類別的建構子。如果沒有就會呼叫其父類別的建構子。如果沒有在子類別的建構子裡面呼叫父類別的建構子。那麼父類別的建構子就是不會在子類別裡面呼叫的