我有一個小問題。這段代碼是否意味着:「每當類MyThread的實例創建時,初始化threading.Thread構造函數並將傳遞的參數分配給MyThread類中的變量」。本質上,這個類所做的是創建一個threading.Thread類的實例,並添加一些自定義功能,如新變量。對?Python。我是否正確理解代碼?
class MyThread(threading.Thread):
def __init__(self, func, args, name=''):
threading.Thread.__init__(self)
self.name = name
self.func = func
self.args = args
如果我是正確的,這段代碼
class MyThread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
簡單地創建threading.Thread類的一個實例,其實同樣可以通過簡單地把a = threading.Thread()
來完成。正確?
'MyThread'是'threading.Thread'的子類。它不會創建另一個實例,它只是調用父類的構造函數。 – Barmar
但是不調用構造函數意味着實際創建一個實例? – trollpidor
不,因爲它傳遞了'self',所以它初始化我們正在初始化的實例。 – Barmar