Python之__new__方法
阿新 • • 發佈:2018-12-02
1 # -*- coding: utf-8 -*- 2 """ 3 Created on Sun Dec 2 11:03:03 2018 4 Python類構造過程 5 @author: zhen 6 """ 7 8 class Man(object): 9 10 def __new__(cls): # 當子類重寫父類的__new__方法時,會首先執行__new__方法建立物件 11 print("--new--") 12 return object.__new__(cls) # 需要呼叫父類建立物件 1314 def __init__(self): # __init__方法執行內部需要傳入__new__返回的物件 15 self.name = "Python" 16 self.age = 18 17 print("--init--") 18 19 def __str__(self): # 類似Java中的toString()方法,用於結構化輸出 20 print(self.name, self.age) 21 22 def __del__(self): #物件生命週期結束時呼叫 23 print("--del--") 24 25 man = Man()
結果: